1.安装
1.下载软件包
- 下载地址
- 下载最新release的win版,例如:poetry-1.1.13-win32.tar.gz
2.获取安装脚本
- 脚本获取地址
- 直接复制到本地,新建一个文件即可,名字随意,后续要用到
3.使用命令安装
- 打开cmd,进入安装包和脚本文件所在目录
- 执行命令:
python get-poetry.py --file poetry-1.1.13-win32.tar.gz
- 完成标识:
To get started you need Poetry's bin directory (%USERPROFILE%\.poetry\bin) in your PATH
4.配置环境变量
- 我的电脑右键---->属性---->高级系统设置----->环境变量---->系统环境变量---->Path编辑----->新建
- 增加:C:\Users\xxxx.poetry\bin
5.验证是否安装成功
- 重新开启一个CMD命令窗口
poetry --version
2.项目中的使用
1.在现有项目中使用
poetry init
- 会在项目中生成一个
pyproject.toml
的文件,用来记录依赖项
2.使用poetry
创建一个新的项目
poetry new foo
3.命令选项
1.全局选项
--verbose (-v|vv|vvv):
"-v" 正常输出, "-vv" 详细输出 "-vvv" debug
--help (-h)
: 帮助信息
--quiet (-q)
: 不输出任何信息
--ansi
: 强制 ANSI 输出
--no-ansi
: 禁止ANSI 输出
--version (-V)
: 显示版本
--no-interaction (-n)
: 禁止交互询问
2.安装第三方库,有以下选项
poetry add requests==xxx
--group (-D)
: 分组
--editable (-e)
: 添加到编辑模式
--extras (-E)
: 添加额外的依赖
--optional
: 添加至可选依赖
--python
: 指定python版本
--platform
: 指定操作系统
--source
: 使用源名称安装
--allow-prereleases
: 接受 prereleases 安装
--dry-run
: 输出操作但不执行
--lock
: 只更新锁定不安装
--dev
:指定为开发依赖
3.移除第三方库,有以下选项
poetry remove xxx
--group (-D)
: 分组
--dry-run
: 输出操作但不执行
4.列出所有可安装的包,有以下选项
poetry show
--without
: 忽略依赖
--with
: 同时显示
--only
: 只显示指定的依赖
--default
: 只显示默认的
--no-dev
: 不显示开发的依赖
--tree
: 以树状形式显示
--latest (-l)
: 展示最新的版本
--outdated (-o)
: 显示最新版本,但仅适用于过时的软件包
5.读取pyproject.toml
并安装相关依赖,有以下选项
# 需要进入pyproject.toml所在目录
poetry install
--without
: 忽略依赖
--with
: 安装可选的依赖
--only
: 只安装指定的依赖
--default
: 只安装默认的依赖
--sync
: 同步锁定的版本至环境中
--no-root
: 不安装根依赖包
--dry-run
: 输出操作但不执行
--extras (-E)
: 安装额外的包
6.创建虚拟环境
poetry env use /full/path/to/python
poetry env use python3
7.激活虚拟环境
poetry shell
8.退出虚拟环境
exit
8.在虚拟环境中执行命令,不需要进入虚拟环境
poetry run xxx
9.查看虚拟环境信息
poetry env info
10.查看虚拟环境列表
poetry env list
11.删除虚拟环境
poetry env remove
12.检查pyproject.toml
文件
poetry check
13.搜索远程包
poetry search xxx
14.锁定版本
poetry lock
15.导出锁定的文件为其他的格式
poetry export -f requirements.txt --output requirements.txt
--format (-f)
: 转换的格式,暂时只支持requirements.txt
--output (-o)
: 输出文件名字
--dev
: 包括开发的依赖
--extras (-E)
: 额外的依赖
--without-hashes
: 忽略哈希
--with-credentials
: 包括合格证书
16.修改仓库源
[[tool.poetry.source]]
name = "douban"
url = "https://pypi.doubanio.com/simple/"