Python開發環境配置
阿新 • • 發佈:2019-02-02
基於Linux/ Mac OS X。也許很多朋友和我一樣想要,另外也怕自己搞忘了。
一、版本平臺的說明
1、系統平臺
此次開發環境的配置是基於Linux或者Mac OS X 的,對於windows沒有試驗過,所以不好說,應該都是一樣的。不過個人建議,Python開發還是在Linux或者OS X平臺上搞,這兩個系統對於Python提供了原生支援。至少是 系統自帶的。 對於Ubuntu 12.04的Python: 版本2.7.3(不是說其他不行,只是其他版本沒有試驗過) 當然了,系統版本高於12.04也是可以的 OS X 10.9自帶的Python: 版本是2.7.5二、虛擬環境的配置
1、虛擬環境的說明
Python的版本很多,從2.5一直到3.x都有,各個版本之間以及第三方包之間的相容性不是很好,為了讓各自擁有一個隔離的環境不至於相互影響,於是就要一個虛擬環境,將各個版本隔離開來。我是深有體會,因為相容性問題輕則出錯,更要命的是還不知道怎麼修改過來,往往是改了這個那個有出錯,所以虛擬環境很有必要。然後在每個環境中安裝需要的軟體包(配合pip
使用),這一系列的環境是相互隔離的。
2、安裝配置
Linux(這裡特指Ubuntu)上安裝請首先確保進行了以下兩步:sudo apt-get install build-essential sudo aptitude install python-dev
Linux安裝pip
sudo apt-get install python-pip
OS X同樣要先安裝pip
sudo easy_install pip
然後再通過pip安裝virtualenv,Linux和OS X的方法都是一樣的了。
sudo pip install virtualenv
3、方便的使用虛擬環境:virtualenvwrapper
安裝:
sudo pip install virtualenvwrapper
配置virtualenvwrapper
修改
sudo vim /usr/local/bin/virtualenvwrapper.sh
將存放虛擬環境的目錄修改成你要的,它預設的路徑是$HOME/.virtualenvs
我是將它改成了$HOME/virtualenvs
這個路徑還是不要變了吧,只是一個存放虛擬環境的的地方,建立Python專案比如django什麼的並不是存放在這個目錄下。
在~/.bashrc檔案的最後一行新增如下:
export WORKON_HOME=$HOME/.virtualenvs
和
source /usr/local/bin/virtualenvwrapper.sh
這樣管理工具是搞好了
然後執行:
source ~/.bashrc
環境就搞好了!
三、如何使用
得益於上一步安裝的virtualenvwrapper,我們可以很方便的使用和管理虛擬環境 3.1 建立虛擬環境 接下來的操作中要建立一個虛擬環境(也就是一個目錄),這個虛擬環境建立的路徑是$HOME/virtualenvs,也就是在你使用者主目錄下的virtualenvs裡mkvirtualenv test2-pyenv
再去檢視~/virtualenvs,發現多了test2-pyenv
建立後會自動啟用虛擬環境,命令提示符也會有變化,變成這個了:
(test2-env)Terminal_USER> test2-env$3.2 列出所有的虛擬環境
$ lsvirtualenv
3.3 列出所有虛擬環境
$ lsvirtualenv
3.4 啟用虛擬環境
$ workon test2-env
3.5 進入虛擬環境目錄
$ cdvirtualenv
3.6 進入虛擬環境的site-packages目錄
$ cdsitepackages
3.7 列出site-packages目錄的所有軟體包
$ lssitepackages
3.8 停止虛擬環境
$ deactivate
3.9 刪除虛擬環境
$ rmvirtualenv test2-env
另外:當我們遷移環境並且重建的時候也是非常的方便
4、重建Python環境
4.1 將軟體包配置放到檔案中
$ pip freeze > requirements.txt4.2 重建
重建(rebuild) 環境就是在部署的時候,在生產環境安裝好對應版本的軟體包,不要出現版本相容等問題:$ pip install -r requirements.txt
參考: ------------------------------------------------------------------------------------------------------------------------------ 虛擬環境準備好了,要不開發個django應用試試?