python中如何使用虛擬環(huán)境
在進(jìn)行python的開發(fā)過程中一直倡導(dǎo)使用虛擬環(huán)境來進(jìn)行項目隔離,這樣不會因為python的包不同而導(dǎo)致各種問題,但是以往為了圖省事簡單,安裝包就一直使用pip install 進(jìn)行全局安裝,這樣做其實很不好,最近也開始嘗試使用虛擬環(huán)境來對項目進(jìn)行隔離開發(fā)。
在python中一般情況下有兩套方案,一種是使用virtualenv/venv 方式,還有一種是使用pipenv,但是看到網(wǎng)上對于pipenv這個項目有些非議,就目前來說項目的issue和pr很多,但是開發(fā)者似乎不太想要對其進(jìn)行維護(hù),所以還是先嘗試比較成熟穩(wěn)定的virtualenv/venv方式吧,至于pipenv 以后再進(jìn)行嘗試。我所考慮的幾個問題
如何創(chuàng)建一個虛擬隔離環(huán)境 如何在虛擬環(huán)境中安裝包 如何使用國內(nèi)的鏡像源加速 如何遷移項目到別的機(jī)器上現(xiàn)在主要在python3中開發(fā),所以就直接使用venv的方式吧,virtualenv和venv方式差不多,如果你是在python2中那么就使用virtualenv吧。
如何創(chuàng)建一個虛擬隔離環(huán)境
創(chuàng)建目錄,并使用命令創(chuàng)建虛擬環(huán)境
mkdir venvtestcd venvtestpython3 -m venv venttest
我是在windows環(huán)境下,執(zhí)行完上面的命令以后會在venvtest目錄下venvtest目錄,這個目錄下有python3環(huán)境的基礎(chǔ)標(biāo)準(zhǔn)庫,并不包含你在全局環(huán)境中安裝的第三方包。
調(diào)用虛擬環(huán)境的Scriptsactivate 命令就可以激活虛擬環(huán)境,激活虛擬環(huán)境以后,命令行提示符前會顯示當(dāng)前虛擬環(huán)境的名字:(venttest) E:venvtest>
安裝第三方庫
和全局安裝一樣,使用pip install 命令,只不過這次是安裝到了虛擬環(huán)境,如運(yùn)行pip install requests命令,運(yùn)行之后再查看venvtestventtestLibsite-packages 中就會有requests庫了,但是前提一定要使用activate激活當(dāng)前的虛擬環(huán)境,要不就安裝到了全局的python site-packages目錄里了。
如何使用國內(nèi)的鏡像源加速
在虛擬機(jī)環(huán)境中使用pip 讀取的是全局的鏡像回事配置,就是要創(chuàng)建一個環(huán)境變量HOME,然后在HOME環(huán)境變量的目錄下創(chuàng)建pip目錄,再創(chuàng)建一個pip.ini,寫入
[global]index-url = https://mirrors.aliyun.com/pypi/simple
我這里使用的是阿里云的鏡像加速。
如何遷移項目到別的機(jī)器上
我這里簡單使用Flask創(chuàng)建一個hello world的項目
from flask import Flaskapp = Flask(__name__)@app.route(’/’)def hello(): return ’歡迎來到我的世界’
在激活虛擬環(huán)境的情況下使用flask run 命令來運(yùn)行服務(wù),此時因為flask安裝在虛擬環(huán)境中,即使全局python環(huán)境中沒有flask也可以運(yùn)行,但一定要在激活虛擬環(huán)境的狀態(tài)。
如何遷移項目
換一個電腦開發(fā)或者在多人開發(fā)的情況下,需要怎么遷移項目呢?簡單的方式是直接將原虛擬環(huán)境直接打包到新的目錄,然后修改一個相應(yīng)的目錄配置。主要是Scriptactivate.bat 將里面的set 'VIRTUAL_ENV=E:vtestventtest' 修改為新的路徑。還有一種方式是在原虛擬環(huán)境下備份出第三方庫列表,然后在新環(huán)境中重新安裝。備份列表命令使用pip freeze > requirements.txt 將該虛擬環(huán)境安裝的第三方包備份到requirements.txt,在新的環(huán)境使用pip install -r requirements.txt 進(jìn)行安裝,使用pip freeze 命令也會同時將第三方庫的版本信息備份,這樣也保證了遷移以后的前后版本一致。新電腦上也要安裝相同使用的python主環(huán)境,如你的虛擬環(huán)境是pyhon3,新環(huán)境只有python2,那也是不行的。但是之前做項目的時候?qū)Φ谌綆煸创a進(jìn)行了修改,這里也需要同時修改一下。
pycharm項目配置虛擬環(huán)境
pycharm 在創(chuàng)建項目的時候可以直接使用venv來創(chuàng)建
在New environment using 的下拉選項中選擇 Virualenv,在Base interpreter 中使用python 3.5 ,這里列出了系統(tǒng)中安裝的python版本。如果沒有列出的話也可以點擊后面的… 來手工選一下。
以上就是python中如何使用虛擬環(huán)境的詳細(xì)內(nèi)容,更多關(guān)于python 虛擬環(huán)境的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. ASP中解決“對象關(guān)閉時,不允許操作。”的詭異問題……2. ASP刪除img標(biāo)簽的style屬性只保留src的正則函數(shù)3. xpath簡介_動力節(jié)點Java學(xué)院整理4. XML解析錯誤:未組織好 的解決辦法5. PHP設(shè)計模式中工廠模式深入詳解6. 使用Spry輕松將XML數(shù)據(jù)顯示到HTML頁的方法7. 告別AJAX實現(xiàn)無刷新提交表單8. 詳解盒子端CSS動畫性能提升9. ASP基礎(chǔ)入門第三篇(ASP腳本基礎(chǔ))10. 在JSP中使用formatNumber控制要顯示的小數(shù)位數(shù)方法
