最近在用python作一個文本的情感分析的項目,用到tensorflow,須要用python3的版本,以前由於《機器學習實戰》那本書的緣故,用的是python2.7.因此目前的狀況是要兩個版本共存,以前看到身邊有人爲了解決這個問題,竟然裝了兩款軟件,pycharm用來作python2.7的開發,另外一款用來作python3.6的開發,估計必定是不知道python的虛擬環境工具virtualenv.本文就來說述一下這個工具是怎麼用的,同時也講一下,如何在pycharm中使用virtualenv.python
virtualenv的安裝和其它python上的軟件安裝同樣,有兩種方法,pip 和setup方法安裝。linux
值得注意的是,咱們說virutalenv的安裝是爲了解決多版本python共存的問題,暗含了,你的至少有一個python版本是已經存在,而且能夠正常工做的。windows
我這裏的主環境是python2.7python2.7
pip install virtualenv
固然了,卸載就是:pip uninstall virtualenv.機器學習
若是pip沒有安裝的話,能夠看下面的第二種安裝virtualenv的方法,順帶將pip也安裝了。函數
在virtualenv的官網下載最新的tar.gz包:https://pypi.python.org/pypi/virtualenv/15.1.0#downloads工具
將tar.gz包解壓後,目錄切換到virutualenv的目錄下,而後在執行一下命令:學習
c:\virtualenv-15.1.0>python setup.py install
若是pip沒有安裝,就按照上面方法,下載最新pip的tar.gz包安裝便可。開發工具
說到用virtualenv配置python的虛擬環境,其實就是將某個特定項目(或者說目錄下)配置成某個python版本。spa
以下:
如今要將c:\PythonProj\sjtu-cs 這個項目(我認爲說成目錄更準確些)配置成python3.6的版本,由於這個目錄下所有是python3.5的東西,用python2.7去運行顯然是有問題的。也就是說要用virtualenv去建立python3.6.1的虛擬環境。值得一提的是,虛擬什麼版本的python,必定是這個python提早已經裝好了。
首先:準備對哪一個目錄進行虛擬,就先進入到這個目錄下(這裏是c:\PythonProj\sjtu-cs ),而後運行命令:
virtualenv -p c:\Python36\python.exe HigEnv
說明: -p就是python的版本(須要帶上路徑,這是由於在咱們的環境變量裏只有python2.7) HigEnv就是虛擬的環境變量。
若是不知道virtual,能夠執行下面的命令進行查看:
上面都解釋的很清楚,這裏再也不贅述。
咱們看一下如今咱們配置的是否生效了:
顯然沒有生效,由於須要激活。
c:\PythonProj\sjtu-cs>cd HigEnv/Scripts
c:\PythonProj\sjtu-cs\HigEnv\Scripts>activate
驗證一下:
>>> python "hello ,world"
python3和python2最明顯的一個區別就是print由打印語句變成函數了。
退出激活環境用下面的命令:
(HigEnv) c:\PythonProj\sjtu-cs\HigEnv\Scripts>deactivate
值得注意的是,退出終端,從新進來的時候,若是沒有激活,咱們配置的虛擬環境是不會生效的,linux就不同了,一直生效,不用每次都激活,目前還在研究中。
pycharm開發工具是我目前見過最好的python開發工具,很是強大,自己已經集成了virtualenv工具,因此咱們若是用它作開發,根本無需手工安裝virtualenv,
不過話又說回來,在windows下的virtualenv使用方法和linux大同小異,會了windows,linux一通百通。
當導入已有項目時,pychar會自動選擇相匹配的python版本,固然你也能夠選,方法在後面。另外python2和python3分別向下兼容,你不會除了這兩個版本還有其他版本吧。
固然了,你也能夠不用建立環境變量,直接選擇你須要的就能夠了:
打開你須要選擇python版本的項目,而後直接選擇須要的project interpreter.
OK!