摘要:什么是虛擬環(huán)境特有的一種軟件環(huán)境創(chuàng)建多個環(huán)境,各個環(huán)境之間完全隔離,互不影響。在虛擬環(huán)境中安裝的第三方包會安裝在目錄下。退出環(huán)境退出當前虛擬環(huán)境使用命令。
什么是虛擬環(huán)境
python特有的一種軟件環(huán)境,創(chuàng)建多個python環(huán)境,各個環(huán)境之間完全隔離,互不影響。它可以用來解決Python項目開發(fā)和運行過程中的依賴項和版本問題,而不必和其他項目的Python環(huán)境以及全局的Python環(huán)境發(fā)生沖突。安裝
$ pip install virtualenv
注:Linux下默認未安裝pip,需要手動安裝pip命令。
sudo apt install python-pip #python2.7安裝 sudo apt install python3-pip # python3安裝 pip install --upgrade pip #pip 更新創(chuàng)建虛擬環(huán)境
安裝完成后,可以使用?virtualenv?命令創(chuàng)建放置虛擬環(huán)境的目錄:
$ virtualenv [OPTIONS] [虛擬環(huán)境名稱]
-p PYTHON_EXE, --python=PYTHON_EXE?指定生成的虛擬環(huán)境使用的Python解釋器:
#順序都可以 virtualenv -p /usr/bin/python3.6 ENV virtualenv ENV --python=python3.6 virtualenv --python=python3.6 ENV
ENV/lib 和 ENV/include 目錄中包含了虛擬環(huán)境ENV使用的庫文件。在虛擬環(huán)境中安裝的第三方包會安裝在 ENV/lib/python3.4/site-packages 目錄下。
ENV/bin 目錄里面放置了可執(zhí)行文件,在里面有新安裝的Python 包中的可執(zhí)行程序,包括pip等相關(guān)工具。
OPTIONS參數(shù):默認情況下,虛擬環(huán)境會依賴系統(tǒng)環(huán)境中的 sit package,就是說系統(tǒng)中已經(jīng)安裝好的第三方 package 也會安裝在虛擬環(huán)境中,如果不想依賴這些 package,那么可以加上 --no-site-packages 參數(shù)建立虛擬環(huán)境。
$ virtualenv --no-site-packages [虛擬環(huán)境名稱]
# virtualenv --version
# virtualenv -h
# virtualenv --no-setuptools ENV
# virtualenv --no-pip ENV
# virtualenv --no-wheel ENV啟動環(huán)境
新創(chuàng)建的虛擬環(huán)境目錄中有一個啟動腳本?ENV/bin/activate?,直接使用?source?命令來啟動虛擬環(huán)境。
$ source ENV/bin/activate退出環(huán)境
退出當前虛擬環(huán)境使用?deactivate?命令。
$ deactivate安裝?virtualenvwrapper?擴展包
Virtaulenvwrapper 是 virtualenv 的擴展包,可以把新創(chuàng)建的環(huán)境記錄下來,不需要每次啟動虛擬環(huán)境時都執(zhí)行一遍 source 命令,可以更方便的管理虛擬環(huán)境。安裝 virtualenvwrapper
它可以實現(xiàn):
1、將所有虛擬環(huán)境整合在一個目錄下
2、管理(新增,刪除,復(fù)制)虛擬環(huán)境
3、快速切換虛擬環(huán)境
$ pip install virtualenvwrapper
此時還不能使用virtualenvwrapper,默認virtualenvwrapper安裝在/usr/local/bin下面,實際上你需要運行virtualenvwrapper.sh文件才行,里面有安裝步驟,我們照著操作把環(huán)境設(shè)置好。
創(chuàng)建存放虛擬環(huán)境的目錄# $HOME是用戶主目錄 $ mkdir $HOME/.virtualenvs進入 用戶主目錄,打開 .bashrc 文件,添加如下代碼:
export WORKON_HOME=$HOME/.virtualenvs #export PROJECT_HOME=$HOME/Devel export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 source /usr/local/bin/virtualenvwrapper.sh
WORKON_HOME: 告訴 virtualenvwrapper 在哪里放置你的虛擬環(huán)境,默認是在?$HOME/.virtualenvs?目錄下。如果這個目錄不存在,virtualenvwrapper 運行的時候會自動創(chuàng)建它。執(zhí)行 source 命令,使剛添加的代碼生效:PROJECT_HOME :告訴virtualenvwrapper在哪里存放你的項目的工作目錄
$ source .bashrcwindows下安裝virtualenvwrapper
pip install virtualenvwrapper-win
設(shè)置環(huán)境變量
在系統(tǒng)變量中新建“變量名”:WORKON_HOME:“你自定義的路徑”。使用 virtualenvwrapper 虛擬環(huán)境相關(guān)操作:
lsvirtualenv: 列出虛擬環(huán)境列表(個人喜歡用第二個)
workon+Enter: 列出虛擬環(huán)境列表
mkvirtualenv [虛擬環(huán)境名稱]: 新建虛擬環(huán)境
workon [虛擬環(huán)境名稱]: 切換虛擬環(huán)境
rmvirtualenv [虛擬環(huán)境名稱]: 刪除虛擬環(huán)境
deactivate: 離開虛擬環(huán)境
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/42140.html
引入—— 解決兩個在python開發(fā)中很常見的問題: Python很萬能,這誰都知道(我也知道哈),但這就意味著——Python的庫多,是真的多!你要用哪個庫,就直接下載!pip install!很簡單吧,是很簡單!但是,這樣會很直接的帶來一個問題,也是很多新手容易犯得——你一看他的Python環(huán)境,全是第三方包,密密麻麻的,甚至于開個pycharm,加載第三方包都得加載半年,他還不知道為啥(傻...
摘要:設(shè)置步驟根據(jù)需要,設(shè)置不同版本的虛擬環(huán)境,本文以為例。這是為什么呢這一點是為了在的虛擬環(huán)境中使用。使用了一段時間虛擬環(huán)境的我覺得這項操作十分的人文關(guān)懷,繞開了那些亂七八糟的環(huán)境和版本。 寫這篇的原因是在使用 python 的過程中,陸續(xù)安裝了 python2.7、python3.6、python3.7 的版本,區(qū)分 python2 和 python3 還好,而更新到 python3.7...
摘要:虛擬環(huán)境非常有用,因為它可以防止系統(tǒng)出現(xiàn)包管理混亂和版本沖突的問題。為每個應(yīng)用程序創(chuàng)建一個虛擬環(huán)境可以確保應(yīng)用程序只能訪問它們自己使用的包,從而全局解釋器只作為一個源且依然整潔干凈去更多的虛擬環(huán)境。另一個好處是,虛擬環(huán)境不需要管理員權(quán)限。 https://www.jianshu.com/p/08c... virtualenv 虛擬環(huán)境是在Python解釋器上的一個私有復(fù)制,你可以在一個...
摘要:不同虛擬環(huán)境內(nèi)部的庫版本涉及不會影響其它虛擬環(huán)境。接著,編輯,寫入一下配置了配置虛擬環(huán)境的根目錄的英文為了使以上配置生效,運行命令這時候,命令行里面就有了命令。 我們在寫的Python程序的時候,經(jīng)常會用到非標準庫的包和模塊,比如要求等非常有用的第三方包和模塊。有時候也會用到某個包和模塊的特定版本,可能是這個特定的版本修復(fù)了某個bug,或者是依賴的接口只有該版本有。也可能系統(tǒng)安裝了Py...
摘要:為每個程序單獨創(chuàng)建虛擬環(huán)境可以保證程序只能訪問虛擬環(huán)境中的包,從而保持全局解釋器的干凈整潔,使其只作為創(chuàng)建更多虛擬環(huán)境的源。 說明 虛擬環(huán)境是 Python解釋器的一個私有副本,在該環(huán)境中可安裝私有包,且不會影響系統(tǒng)中安裝的全局 Python解釋器 虛擬環(huán)境非常有用,可以在系統(tǒng)的Python解釋器中避免包的混亂和版本的沖突。為每個程序單獨創(chuàng)建虛擬環(huán)境可以保證程序只能訪問虛擬環(huán)境中的包,...
閱讀 3572·2021-11-25 09:43
閱讀 3149·2021-10-08 10:04
閱讀 1639·2019-08-26 12:20
閱讀 2069·2019-08-26 12:09
閱讀 612·2019-08-23 18:25
閱讀 3588·2019-08-23 17:54
閱讀 2341·2019-08-23 17:50
閱讀 816·2019-08-23 14:33