前言 Python虛擬環境是一個虛擬化,從電腦獨立開闢出來的環境。在這個虛擬環境中,我們可以pip安裝各個項目不同的依賴包,從全局中隔離出來,利於管理。 傳統的Python虛擬環境有virtualenv,使用pip freeze requirements.txt 導出依賴。現在又有了一個新神器 Pi ...
前言
Python虛擬環境是一個虛擬化,從電腦獨立開闢出來的環境。在這個虛擬環境中,我們可以pip安裝各個項目不同的依賴包,從全局中隔離出來,利於管理。
傳統的Python虛擬環境有virtualenv,使用pip freeze -> requirements.txt 導出依賴。現在又有了一個新神器 -- Pipenv, 它是由大名鼎鼎的requests 作者 Kenneth Reitz 寫的一個命令行工具,這個工具包裝了virtualenv,使用Pipfile和Pipfile.lock管理,更加方便。
安裝Pipenv
首先檢查Python和Pip命令能否在命令行中正確執行
$ python -V
$ pip -V
安裝Pipenv:
$ pip install pipenv
驗證是否成功安裝:
$ pipenv
出現以下則安裝成功
創建虛擬環境
首先進入項目工程根目錄
創建虛擬環境:
$ pipenv install
如果目錄中沒有Pipfile和Pipfile.lock,會自動生成。如果存在,則會自動安裝Pipfile中的所有依賴
創建成功後,可以在根目錄中看到兩個文件:
Pipfile中保存著各個依賴包的版本信息,Pipfile.lock保存著依賴包的鎖信息
由於pip源的速度過慢,我們可以修改Pipfile的源信息
常用的pip源地址如下:
- 清華:https://pypi.tuna.tsinghua.edu.cn/simple
- 阿裡雲:http://mirrors.aliyun.com/pypi/simple/
- 中國科技大學 https://pypi.mirrors.ustc.edu.cn/simple/
- 豆瓣:http://pypi.douban.com/simple/
安裝第三方依賴包
到此為止,就可以安裝依賴包了
這裡以安裝requests庫舉例
# Pipfile文件目錄下
$ pipenv install requests
這裡執行了兩步操作:1.安裝到虛擬環境中,更新Pipfile裡面的依賴版本。2.使用sha256演算法更新pipfile.lock文件。
註意:預設情況下會加鎖,速度很慢,可以使用如下命令不加鎖加快速度
$ pipenv install xxx --skip-lock
卸載第三方依賴包
$ pipenv uninstall requests
查看安裝的所有第三方依賴
進入命令行交互模式:
$ pipenv shell
使用pip list查看
$ pip list
因為之前卸載了requests,所以依賴不見了。
退出命令行交互模式:
$ exit
註意:千萬不要使用deactivate命令,否則會出錯!
常用選項
顯示虛擬環境實際文件路徑
pipenv --venv
顯示虛擬環境python解釋器所在路徑
pipenv --py
顯示項目文件所在路徑
pipenv --where
刪除虛擬環境
pipenv --rm
安裝第三方依賴但不加鎖(加快速度)
pipenv install xxx --skip-lock
常用命令參數:
鎖定並生成pipfile.lock文件
pipenv lock
查看依賴關係
pipenv graph
在虛擬環境中運行python程式
pipenv run xxx.py
檢查安全漏洞
pipenv check