Poetry是啥?
是一個(gè)Python虛擬環(huán)境和依賴管理工具,另外它還提供了包管理功能,比如打包和發(fā)布。
可以用來管理python庫和python程序。
安裝Poetry
curl -sSL https://raw.githubusercontent.com/sdispater/poetry/master/get-poetry.py | python3
使用pip安裝
pip3 install poetry
確認(rèn)是否安裝成功以及查看版本號
poetry --version
在python項(xiàng)目中使用Poetry
在現(xiàn)有項(xiàng)目中使用:
如果是在已有項(xiàng)目中使用poetry,你只需要執(zhí)行一下命令來創(chuàng)建一個(gè)pyproject.toml文件即可:
poetry init
使用poetry創(chuàng)建一個(gè)新項(xiàng)目:
poetry new project_name (項(xiàng)目名字)
項(xiàng)目結(jié)構(gòu)如下圖:
結(jié)構(gòu)介紹
- pyproject.toml: 使用此文件管理依賴列表和項(xiàng)目的各種meta信息,用來替代 Pipfile、requirements.txt、setup.py、setup.cfg、MANIFEST.in 等等各種配置文件。
創(chuàng)建虛擬環(huán)境
Tips: 確保當(dāng)前目錄存在pyproject.toml文件
poetry install
這個(gè)命令會讀取pyproject.toml中的所有依賴并安裝(包括開發(fā)依賴),如果不想安裝開發(fā)依賴可以附加:--no-dev 選項(xiàng)。如果項(xiàng)目根目錄有 poetry.lock 文件,會安裝這個(gè)文件中列出的鎖定版本的依賴。如果執(zhí)行 add/remove 命令的時(shí)候沒有檢測到虛擬環(huán)境,也會為當(dāng)前目錄自動創(chuàng)建虛擬
激活虛擬環(huán)境
poetry shell
查看python版本
poetry run python -V
執(zhí)行腳本
poetry run python app.py
安裝包
poetry add flask
添加--dev參數(shù)為開發(fā)依賴:
poetry add pytest --dev
追蹤 & 更新包
poetry show
添加--tree 參數(shù)選項(xiàng)可以查看依賴關(guān)系:
poetry show --tree
查看可以更新的依賴:
poetry show --outdated
更新所有鎖定版本的依賴:
poetry update
更新某個(gè)指定的依賴:
poetry update dep_name (依賴名字)
卸載包
poetry remove dep_name
讓poetry使用python3
poetry env use python3.7
常用配置
Q&A
推薦使用python3
poetry版本很重要,最好使用最新版本
