使用pyenv和Vtualenv作環境隔離,使用jupyter方便咱們學習python
全部操做都應在單獨的用戶中進行,不要使用root用戶linux
useradd python
開發版本和所用包版本的隔離git
github地址github
安裝過程在CentOS中進行,注意用到EPEL源
安裝gitweb
yum install git -y
安裝依賴sql
yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel
升級nss,同時保證系統時間正確,否則安裝pyenv可能報錯shell
yum update nss
安裝pyenvvim
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
將下面的三行加入到~/.bash_profilewindows
export PATH="/home/python/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
source ~/.bash_profile
這樣當用戶啓動的時候,會執行用戶的.bash_profile中的腳步,就會啓動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
version 顯示當前的python版本
versions 顯示全部已安裝的python版本,和當前版本
$ 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
影響只做用於當前會話
$ pyenv shell 3.6.2
使用pyenv local設置從當前工做目錄開始向下遞歸都繼承這個設置
pyenv local 3.6.2
爲何要使用虛擬環境?
由於剛纔使用的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是加強的交互式Python命令行工具
操做仍然在dzm/projects/test/目錄中,此時ipython也是安裝到這個環境中的,與外面的環境相互隔離
pip install ipython ipython
pip是Python的包管理工具,3.x版本直接帶了,能夠直接使用
和yum同樣爲了使用國內鏡像,作以下配置
$ mkdir ~/.pip vim ~/.pip/pip.conf
[global] index-url=https://mirrors.aliyun.com/pypi/simple/ truste
pip的配置文件在家目錄新建pip文件夾,在裏面新建文本文件pip.ini,等同於linux環境的pip.conf
查看當前環境都安裝了哪些包
pip list
將當前環境的包的列表導出到一個文件
pip freeze > requirement
根據上面導出的列表安裝包
pip install -r requirement
(把虛擬環境包目錄裏面的文件直接拷貝到新環境包目錄裏也能夠)
是基於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