requirements.txt用來記錄項目全部的依賴包和版本號,只須要一個簡單的pip命令就能完成。python
pip freeze >requirements.txt
而後就能夠用shell
pip install -r requirements.txt
來一次性安裝requirements.txt裏面全部的依賴包,真是很是方便。npm
發現了一個全新的Python包管理器,叫作pipenv
,集合了全部編程語言的包管理器的優勢,是kennethreitz
大神的一個週末項目。它的工做方式就像Node.js裏的npm或者yarn,很容易就解決Python2/3
混合使用產生的版本問題。編程
首先用pip install pipenv
來安裝它,而後在你的項目的根目錄下面運行pipenv --three
來生成Python3的虛擬環境,或者pipenv --two
生成Python2環境。json
這樣pipenv
會在這個項目裏建立一個pipfile
的文件,就像package.json
同樣,裏面記錄了項目全部的依賴包版本信息。flask
[[source]] url = "https://pypi.python.org/simple" verify_ssl = true name = "pypi" [packages] [dev-packages] [requires] python_version = "3.6"
要運行pipenv shell
進入虛擬環境,能夠輸入exit
退出。pipenv install
能夠一鍵安裝全部依賴包,還會生成pipfile.lock
文件,裏面記錄了此次安裝時的依賴包。編程語言
在pipenv install
後面加上包名稱,好比pipenv install flask
能夠安裝Flask到生產環境,再加參數,好比pipenv install flask --dev
就會安裝到開發環境。ui
相似地,把上面的install
改爲uninstall
就會卸載依賴包,pipenv uninstall --all
能夠卸載項目下全部的包。就是這麼用的,更多的命令請查看pipenv官網。url