溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python的virtualenv怎么使用

發(fā)布時間:2022-01-25 09:21:04 來源:億速云 閱讀:141 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“python的virtualenv怎么使用”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

VirtualEnv用于在一臺機(jī)器上創(chuàng)建多個獨立的python運行環(huán)境,VirtualEnvWrapper為前者提供了一些便利的命令行上的封裝。

python的virtualenv怎么使用

首先,我們用pip安裝virtualenv:

$ pip3 install virtualenv

然后,假定我們要開發(fā)一個新的項目,需要一套獨立的Python運行環(huán)境,可以這么做:

第一步,創(chuàng)建目錄:

Mac:~ michael$ mkdir myproject
Mac:~ michael$ cd myproject/
Mac:myproject michael$

第二步,創(chuàng)建一個獨立的Python運行環(huán)境,命名為venv:

Mac:myproject michael$ virtualenv --no-site-packages venv
Using base prefix '/usr/local/.../Python.framework/Versions/3.4'New python executable in venv/bin/python3.4
Also creating executable in venv/bin/python
Installing setuptools, pip, wheel...done.

命令virtualenv就可以創(chuàng)建一個獨立的Python運行環(huán)境,我們還加上了參數(shù)–no-site-packages,這樣,已經(jīng)安裝到系統(tǒng)Python環(huán)境中的所有第三方包都不會復(fù)制過來,這樣,我們就得到了一個不帶任何第三方包的“干凈”的Python運行環(huán)境。

新建的Python環(huán)境被放到當(dāng)前目錄下的venv目錄。有了venv這個Python環(huán)境,可以用source進(jìn)入該環(huán)境:

Mac:myproject michael$ source venv/bin/activate
(venv)Mac:myproject michael$

注意到命令提示符變了,有個(venv)前綴,表示當(dāng)前環(huán)境是一個名為venv的Python環(huán)境。

下面正常安裝各種第三方包,并運行python命令:

(venv)Mac:myproject michael$ pip install jinja2
...
Successfully installed jinja2-2.7.3 markupsafe-0.23
(venv)Mac:myproject michael$ python myapp.py
...

在venv環(huán)境下,用pip安裝的包都被安裝到venv這個環(huán)境下,系統(tǒng)Python環(huán)境不受任何影響。也就是說,venv環(huán)境是專門針對myproject這個應(yīng)用創(chuàng)建的。

退出當(dāng)前的venv環(huán)境,使用deactivate命令:

(venv)Mac:myproject michael$ deactivate
Mac:myproject michael$

此時就回到了正常的環(huán)境,現(xiàn)在pip或python均是在系統(tǒng)Python環(huán)境下執(zhí)行。

完全可以針對每個應(yīng)用創(chuàng)建獨立的Python運行環(huán)境,這樣就可以對每個應(yīng)用的Python環(huán)境進(jìn)行隔離。

virtualenv是如何創(chuàng)建“獨立”的Python運行環(huán)境的呢?原理很簡單,就是把系統(tǒng)Python復(fù)制一份到virtualenv的環(huán)境,用命令source venv/bin/activate進(jìn)入一個virtualenv環(huán)境時,virtualenv會修改相關(guān)環(huán)境變量,讓命令python和pip均指向當(dāng)前的virtualenv環(huán)境。

“python的virtualenv怎么使用”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI