pyenv是個多版本python管理器,可以同時管理多個python版本共存,如pypy,miniconde等等
配置
1 環境準備 安裝相關軟體和pyenv
1.1 安裝相關軟體
yum install -y readline readline-devel readline-static openssl openssl-devel openssl-static sqlite-devel bzip2-devel bzip2-libs
1.1 轉殖pyenv
git clone ~/.pyenv
1.2 設定相關環境變數,使pyenv生效
echo
'export pyenv_root="$home/.pyenv"'
>> ~/.bash_profile
echo
'export path="$pyenv_root/bin:$path"'
>> ~/.bash_profile
echo
'eval "$(pyenv init -)
"'>> ~/.bash_profile
exec
$shell -l
2 安裝python
2.1 常用pyenv操作
pyenv install --list 檢視可安裝的python版本
pyenv install 3.5.0 安裝python3.5.0
pyenv uninstall //解除安裝
2.2 更新pyenv
安裝完之後,需要更新一下才能看到已經安裝的版本
pyenv rehash
pyenv versions //檢視已經安裝好的版本,帶*號的為當前使用的版本
2.3 選擇python版本
pyenv global 3.5.0 //設定全域性版本,即系統使用的將是此版本
pyenv local 3.5.0 //當前目錄下的使用版本,有點類似virtualenv
補充:網路問題導致安裝緩慢或無法進行
3 python virtualenv建立純淨虛擬環境
雖然直接安裝pip安裝virtualenv也行,但是通過pyenv外掛程式的形式安裝virtualenv的虛擬環境更加方便,因為之後的操作會比較方便。
3.1 安裝外掛程式pyenv-virtualenv
參考文章:
pyenv-virtualenv外掛程式安裝:專案主頁:
pyenv virtualenv是pyenv的外掛程式,為unix系統上的python virtualenvs提供pyenv virtualenv命令。
3.2 安裝virtualenv
git clone .git ~/.pyenv/plugins/pyenv-virtualenv
echo
'eval "$(pyenv virtualenv-init -)
"'>> ~/.bash_profile
這個外掛程式將安裝在主資料夾下的.pyenv資料夾中。
3.3 建立乙個2.7.13的虛擬環境
pyenv virtualenv 2.7.13 py27
source ~/.bash_profile
這條命令在本機上建立了乙個名為env271的python虛擬環境,這個環境的真實目錄位於:~/.pyenv/versions/
注意,命令中的 『2.7.13』 必須是乙個安裝前面步驟已經安裝好的python版本, 否則會出錯。
然後我們可以繼續通過 『pyenv versions』 命令來檢視當前的虛擬環境。
3.4 切換和使用新的python虛擬環境:
pyenv activate env271
這樣就能切換為這個版本的虛擬環境。通過輸入python檢視現在版本,可以發現處於虛擬環境下了。
如果要切換回系統環境, 執行這個命令即可
pyenv deactivate
那如果要刪除這個虛擬環境呢? 答案簡單而且粗暴,只要直接刪除它所在的目錄就好:
rm -rf ~/.pyenv/versions/env271/
或者解除安裝:
pyenv uninstall env271
4 安裝ipython
centos7 已經帶有pip,不用安裝pip(在centos6 叫python-pip,在centos7 叫pip)
yum install python-pip
進入python環境後, 安裝ipython,若是python2+,需要指定ipython版本為ipython==1.2.1
pip install ipython
1 環境準備 安裝相關軟體和pyenv
#!/usr/bin/env bash
# 安裝相關軟體和pyenv
yum install -y readline readline-devel readline-static openssl openssl-devel openssl-static sqlite-devel bzip2-devel bzip2-libs
# 轉殖pyenv
git clone ~/.pyenv
# 匯出環境變數,使pyenv生效
echo
'export pyenv_root="$home/.pyenv"'
>> ~/.bash_profile
echo
'export path="$pyenv_root/bin:$path"'
>> ~/.bash_profile
echo
'eval "$(pyenv init -)
"'>> ~/.bash_profile
exec
$shell -l
2 安裝python
#!/usr/bin/env bash
python2=2.7.13
python2_url=
""python3=3.6.0
python3_url=
""test -e ~/.pyenv/cache ||
mkdir -p ~/.pyenv/cache
cd ~/.pyenv/cacheif!
ls python-$.tar.xz &
> /dev/null;
then
wget
$python2_url
fipyenv install
$python2 -vif!
ls python-$.tar.xz &
> /dev/null;
then
wget
$python3_url
fipyenv install
$python3 -v
git clone .git ~/.pyenv/plugins/pyenv-virtualenv
echo
'eval "$(pyenv virtualenv-init -)
"'>> ~/.bash_profile
source ~/.bash_profile
3 python virtualenv建立純淨虛擬環境
#!/usr/bin/env bash
python2=2.7.13
python3=3.6.0
pyenv virtualenv $python2 py27
pyenv virtualenv $python3 py35
echo
'alias py27="pyenv activate py27"'
>> ~/.bash_profile
echo
'alias py35="pyenv activate py35"'
>> ~/.bash_profile
echo
'alias pyd="pyenv deactivate"'
>> ~/.bash_profile
source ~/.bash_profile
4 安裝ipython
#!/usr/bin/env bash
# 使用py27進入python環境後,進行以下操作。
# py27
yum install python-pip
pip install ipython==1.2.1
#!/usr/bin/env bash
# 使用py35進入python環境後,進行以下操作。
# py35
yum install python-pip
pip install ipython
利用pyenv實現python的多版本控制
在學習和利用python開發的很多情況下,需要多版本的python並存。此時需要在系統中安裝多個python,但又不能影響系統自帶的 python。pyenv 就是這樣乙個 python 版本管理器。安裝pyenv curl l bash 配置環境變數 安裝完成後,根據提示將如下語句加入到 bash...
Mysql知識延展(七)MVCC多版本併發控制
mvcc簡述 mvcc mutil version concurrency control 就是多版本併發控制。mvcc 是一種併發控制的方法,一般在資料庫管理系統中,實現對資料庫讀寫的併發訪問。在mysql的innodb引擎中就是指在已提交讀 read committd 和可重複讀 repeata...
MySql 事務詳解與 MVCC 多版本併發控制
原子性 atomicity 事務包含的所有操作要麼全部成功,要麼全部失敗回滾。一致性 consistency 事務必須使資料庫從乙個一致性狀態變換到另乙個一致性狀態,也就是說乙個事務執行之前和執行之後都必須處於一致性狀態。隔離性 isolation 事務之間相互隔離不被干擾。永續性 durabili...