Poetry(2)Poetry的基本使用方式
Poetry的基本使用
準(zhǔn)備工作
如果你是在一個已有的項(xiàng)目里使用Poetry,你只需要執(zhí)行 poetry init 命令來創(chuàng)建一個 pyproject.toml 文件:
poetry init
可看到有很多提示輸入,不確定的內(nèi)容就先按下Enter使用默認(rèn)值,后續(xù)可以再修改pyproject.toml文件。指定依賴的環(huán)節(jié)可以跳過,手動安裝會更高效一點(diǎn)。
如果你想創(chuàng)建一個新的 Python 項(xiàng)目,使用 poetry new <文件夾名稱> 命令可以創(chuàng)建一個項(xiàng)目模板:
poetry new poetry-demo
這會創(chuàng)建一個這樣的項(xiàng)目結(jié)構(gòu):
poetry-demo
├── pyproject.toml
├── README.rst
├── poetry_demo
│ └── __init__.py
└── tests
├── __init__.py
└── test_poetry_demo.py
創(chuàng)建虛擬環(huán)境
1.使用 poetry install 命令創(chuàng)建虛擬環(huán)境(確保當(dāng)前目錄有 pyproject.toml 文件):
poetry install
這個命令會讀取 pyproject.toml 中的所有依賴(包括開發(fā)依賴)并安裝,如果不想安裝開發(fā)依賴,可以附加 --no-dev 選項(xiàng)。如果項(xiàng)目根目錄有 poetry.lock 文件,會安裝這個文件中列出的鎖定版本的依賴。
2.使用poetry add命令創(chuàng)建虛擬環(huán)境
poetry add 依賴包名稱
當(dāng)我們使用add命令時,沒有檢測到虛擬環(huán)境,也會為當(dāng)前目錄自動創(chuàng)建虛擬環(huán)境。
3.利用 poetry env use 創(chuàng)建
這個命令,可以指定創(chuàng)建虛擬環(huán)境時使用的Python解釋器版本。
poetry env use python3.7
使用這個命令后,會在虛擬環(huán)境路徑下創(chuàng)建一個envs.toml文件,用來存儲哪些虛擬環(huán)境指定了Python解釋器的版本。
? virtualenvs cat envs.toml
[athena-LtyjKFV4]
minor = "3.7"
patch = "3.7.6"
激活虛擬環(huán)境
執(zhí)行poetry的命令并不需要激活虛擬環(huán)境,因?yàn)閜oetry會自動檢測當(dāng)前虛擬環(huán)境,如果想在當(dāng)前目錄對應(yīng)的虛擬環(huán)境中執(zhí)行命令,可以使用以下命令:
poetry run <你的命令> # 例如: poetry run python flask.py
如果想顯示的激活虛擬環(huán)境,使用如下命令:
poetry shell
安裝依賴
安裝最新穩(wěn)定版本的flask
poetry add flask
指定為開發(fā)依賴,會寫到pyproject.toml中的[tool.poetry.dev-dependencies]區(qū)域
poetry add pytest --dev
指定具體的版本
poetry add flask=2.22.0
安裝pyproject.toml文件中的全部依賴
poetry install
只安裝非development環(huán)境的依賴,一般部署時使用
poetry install --no-dev
追蹤 & 更新包
查看項(xiàng)目安裝的依賴
poetry show
樹形結(jié)構(gòu)查看項(xiàng)目安裝的依賴
poetry show -t
查看可以更新的依賴
poetry update
更新所有鎖定版本的依賴
poetry update
如果你想更新某個指定的依賴,傳遞包名作為參數(shù):
poetry update foo
卸載包
使用 poetry remove <包名稱>卸載一個包:
poetry remove foo
查找當(dāng)前項(xiàng)目的虛擬環(huán)境
使用poetry env list可以查看當(dāng)前的虛擬環(huán)境
poetry env list
如果想查看當(dāng)期虛擬環(huán)境的絕對路徑,可以加上--full-path
poetry env list --full-path
刪除虛擬環(huán)境路徑
刪除虛擬環(huán)境,使用remove命令,指定對應(yīng)的解析器版本
poetry env remove python2
poetry env remove python3
PyPI 鏡像源
以使用清華提供的 PyPI 鏡像源為例,你需要在 pyproject.toml 文件里加入這部分內(nèi)容:
[[tool.poetry.source]]
name = "tsinghua"
default = true
url = "https://pypi.tuna.tsinghua.edu.cn/simple"
總結(jié)
以上是生活随笔為你收集整理的Poetry(2)Poetry的基本使用方式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows Mobile Topic
- 下一篇: ems为什么这么慢(ems特快专递有多快