在Linux環境安裝pyenv、Vtualenv虛擬環境和jupyter
新建用戶
所有操作都應在單獨的用戶中進行,不要使用root用戶
useradd python
Pyenv
安裝Pyenv
開發版本和所用包版本的隔離
github地址
安裝過程在CentOS中進行,註意用到EPEL源
安裝git
yum install git -y
安裝依賴
yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel
升級nss,同時保證系統時間正確,不然安裝pyenv可能報錯
yum update nss
安裝pyenv
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
將下面的三行加入到~/.bash_profile
export PATH="/home/python/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
source ~/.bash_profile
這樣當用戶啟動的時候,會執行用戶的.bash_profile中的腳步,就會啟動pyenv
安裝好的pyenv就在~/.pyenv中
Pyenv的使用
列出所有可用版本
pyenv instll --list
在線安裝指定版本(加-v可以查看詳細安裝過程)
pyenv install 3.5.3 -v
查看已安裝的所有版本(system為當前系統自帶版本)
pyenv versions
這樣安裝較慢,為了提速,使用緩存方式安裝
在~/.pyenv目錄下,新建cache目錄,放入下載好的待安裝版本的文件,例如Python-3.6.3.tar.xz
pyenv install 3.6.3 -v
Pyenv的python版本控制
version 顯示當前的python版本
versions 顯示所有已安裝的python版本,和當前版本
global全局設置
$ pyenv global 3.5.3
可以看到所有受pyenv控制的窗口中都是3.5.3的python版本了
這裏用global是作用於非root用戶python用戶上,如果是root用戶安裝,請不要使用global,否則影響太大。
比如CentOS就是使用Python2.X,root用戶下使用global就成了3.X,會帶來不好的影響
調整回系統默認版本
$ pyenv global system
shell 會話設置
影響只作用於當前會話
$ pyenv shell 3.6.2
local 本地設置
使用pyenv local設置從當前工作目錄開始向下遞歸都繼承這個設置
pyenv local 3.6.2
Virtualenv 虛擬環境
為什麽要使用虛擬環境?
因為剛才使用的Python環境都是一個公共的空間,如果多個項目使用不同的Python版本開發,或者使用不同的Python版本部署運行,或者使用了同樣的版本開發的但不同項目使用了不同版本的庫,等等這些問題都會帶來沖突。最好的解決辦法就是每一個項目獨立運行自己的“獨立小環境”中。
我們新建一個目錄,接下來將這個目錄切換到Python 3.6.2的環境,與系統自帶的2.x環境不沖突
mkdir -p dzm/projects/test/
創建虛擬環境,使用呢Python 3.6.2版本創建出一個獨立的虛擬空間
pyenv virtualenv 3.6.2 py362
此時再使用pyenv versions就可以看到版本列表中名為py362的環境
將新建的目錄切換為py362環境
cd dzm/projects/test/
pyenv local py362
此時當前目錄及其子目錄下面的python環境就變成了3.6.2版本
其它
不同環境的真實目錄
/home/python/.pyenv/versions/
每個環境所安裝的包都會在相應的site-packages目錄中來
/home/python/.pyenv/versions/3.6.2/lib/python3.6/site-packages
安裝ipython
ipython是增強的交互式Python命令行工具
操作仍然在dzm/projects/test/目錄中,此時ipython也是安裝到這個環境中的,與外面的環境相互隔離
pip install ipython
ipython
pip通用配置
pip是Python的包管理工具,3.x版本直接帶了,可以直接使用
和yum一樣為了使用國內鏡像,做如下配置
Linux系統
$ mkdir ~/.pip
vim ~/.pip/pip.conf
[global]
index-url=https://mirrors.aliyun.com/pypi/simple/
truste
windows系統
pip的配置文件在家目錄新建pip文件夾,在裏面新建文本文件pip.ini,等同於linux環境的pip.conf
pip其它應用
查看當前環境都安裝了哪些包
pip list
將當前環境的包的列表導出到一個文件
pip freeze > requirement
根據上面導出的列表安裝包
pip install -r requirement
(把虛擬環境包目錄裏面的文件直接拷貝到新環境包目錄裏也可以)
Jupyter
安裝Jupyter
是基於web的交互式筆記本,其中可以非常方便的使用python
安裝Jupyter,也會安裝ipython的
pip install jupyter
查看幫助
jupyter notebook --help
設置密碼(不然用網頁端瀏覽時就要輸入啟動時的隨機密碼)
jupyter notebook password
啟動(如果不自定0.0.0.0,那麽啟動後默認綁定127.0.0.1,外部是無法瀏覽的,默認8888端口)
jupyter notebook --ip=0.0.0.0
查看啟動端口(默認8888)
ss -tanl
查看本機IP地址
在windows系統中通過瀏覽器瀏覽ip:8888,輸入密碼後即可使用jupyter
在Linux環境安裝pyenv、Vtualenv虛擬環境和jupyter