一塊兒開發項目的時候老是要搭建環境和部署環境的,這個時候必須得有個python第三方包的list,通常都叫作requirements.txt。 若是一個項目使用時virtualenv環境,還好辦 pip freeze 就能夠解決,可是若是一個項目的依賴list沒有維護,並且又是環境混用,那就很差整理的呀,不過,這裏安利一個工具 pipreqs,能夠自動根據源碼生成 requirements.txt .python
$ pip freeze > requirements.txt
這種方式配合virtualenv 纔好使,不然把整個環境中的包都列出來了。工具
pip install pipreqs
使用方式也比較簡單,直接進入項目下而後使用 pipreqs ./ 命令便可,如:ui
pipreqs ./
有可能會報以下錯誤:編碼
這是因爲編碼問題所致使的,加上encoding參數便可,以下:spa
pipreqs ./ --encoding=utf-8
直接用下面命令就能夠將文件中全部的模塊一次性安裝了code
安裝依賴文件:pip3 install -r requirements.txt
virtualenv爲應用提供了隔離的Python運行環境,解決了不一樣應用間多版本的衝突問題。blog
例如:ip
若是咱們要同時開發多個應用程序,那這些應用程序都會共用一個Python,就是安裝在系統的Python 3。若是應用A須要jinja 2.7,而應用B須要jinja 2.6怎麼辦?utf-8
這種狀況下,每一個應用可能須要各自擁有一套「獨立」的Python運行環境。virtualenv就是用來爲一個應用建立一套「隔離」的Python運行環境。開發
pip3 install virtualenv
首先:準備對哪一個目錄進行虛擬,就先進入到這個目錄下(這裏是c:\PythonProject\nnblog ),而後運行命令:
virtualenv -p c:\Python36\python.exe venv
說明: -p就是python的版本(須要帶上路徑) venv就是虛擬的環境變量(目錄名字)。
若是不須要指定python版本,直接使用命令:
virtualenv venv
須要進入自動建立的文件夾venv裏的script目錄
而後執行activate命令
c:\PythonProject\nnblog>cd venv/Scripts c:\PythonProject\nnblog\venv\Scripts>activate
從如今起,任何你使用pip安裝的包將會放在 venv
文件夾中,與全局安裝的Python隔絕開。
像日常同樣安裝包,好比:
pip install requests
使用deactivate命令便可退出當前虛擬環境
c:\PythonProject\nnblog\venv\Scripts>activate
這將會回到系統默認的Python解釋器,包括已安裝的庫也會回到默認的。
要刪除一個虛擬環境,只需刪除它的文件夾便可。