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