1. 程式人生 > >python 啟動虛擬環境

python 啟動虛擬環境

遇到的問題 all 時也 mona seo min 開發 main python3

假設你有兩個Python項目-A和B,這兩個項目都需要使用同一個第三方模塊-tensorflow。如果這兩個項目使用相同的tensorflow版本,也許不會有什麽問題。

但是,當A和B項目使用不同的tensorflow版本時-A使用tensorflow 0.70版本;B使用tensorflow 0.80版本。由於Python導入模塊不能區分模塊版本,導致A、B不能使用tensorflow的不同版本,這在很多情況下是不能接受的。

使用虛擬環境的另一個好處是:保持開發環境的簡潔、有序。

什麽是Python虛擬環境?

Python虛擬環境可以為項目創建相互獨立的開發環境,也就是你可以為每個項目安裝各自使用依賴模塊。

使用虛擬環境可以很好的解決上面A、B項目遇到的問題:為A、B項目分別創建虛擬環境,然後在各自的虛擬環境中安裝不同的tensorflow版本。

使用虛擬環境需要借助virtualenv或pyvenv,它們的使用非常簡單。

安裝virtualenv、pyvenv

如果你使用Python 2,你可以使用pip安裝virtualenv

	
$sudo pip install virtualenv

如果你使用Python 3,它默認安裝了pyvenv。

virtualenv和pyvenv的使用方法類似。由於pyvenv是較新的工具,本帖以它為例。

創建一個存放虛擬環境的目錄:

$mkdir   python-env
$cd  python-env

創建一個虛擬環境:

bin/pyvenv-3.6  env_A

上面命令在當前目錄創建了env_A目錄,目錄結構:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ├──bin ├──activate ├──activate.csh ├──activate.fish ├──easy_install ├──easy_install-3.5 ├──pip ├──pip3 ├──pip3.5 ├──python->python3.5 ├──python3->python3.5
└──python3.5->/opt/local/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 ├──include ├──lib └──python3.5 └──site-packages └──pyvenv.cfg

使用創建的虛擬環境env_A:

source env/bin/activate

提示符中包含:

(env_A) [root@localhost python-env]

現在你通過pip安裝的包都會安裝這個虛擬環境中;導入(import)模塊時也只能使用這個虛擬環境中的模塊。

如果要退出env_A虛擬環境,執行:deactivate

(env_A)[root@localhost python-env]$deactivate

python 啟動虛擬環境