使用 pip
requirements.txt 用來記錄項目所有的依賴包和版本號,只需要一個簡單的 pip 命令就能完成。
pip freeze > requirements.txt
生成的文件會像這個樣子
alembic==1.0.10
blinker==1.4
Click==7.0
dominate==2.3.5
Flask==1.0.3
然后就可以用
pip install -r requirements.txt
來一次性安裝 requirements.txt 里面所有的依賴包,真是非常方便。
使用 Python3 的 venv
創建虛擬環境
python -m venv env
激活虛擬環境
. env/bin/activate
使用 poetry 包管理
poetry 的工作方式就像 Node.js 里的 npm/yarn。
首先用 pip install poetry 來安裝它,可以用 poetry new [name] 來生成新項目,或者在項目的根目錄下面運行 poetry init 來初始化。
這樣 poetry 會在這個項目里創建一個 pyproject.toml 的文件,就像 package.json 一樣,里面記錄了項目所有的依賴包版本信息。
[tool.poetry]
name = "my-package"
version = "0.1.0"
description = "The description of the package"
[tool.poetry.dependencies]
python = "~2.7 || ^3.2" # Compatible python versions must be declared here
toml = "^0.9"
[tool.poetry.dev-dependencies]
pytest = "^3.0"
[tool.poetry.scripts]
my-script = 'my_package:main'
poetry install可以一鍵安裝所有依賴包,還會生成 poetry.lock 文件,里面記錄了這次安裝時的依賴包。poetry install --no-dev 可以只安裝生產環境的包,不安裝開發環境的包。
在 poetry add [name] 可以安裝 Flask 到生產環境,比如 poetry add flask,再加 --dev 參數,poetry add --dev flask就會安裝到開發環境。
poetry remove [name] 可以卸載依賴包,poetry show 可以顯式安裝好的包。
更多用法請查看 poetry 。
