本文已参与「新人创作礼」活动,一起开启掘金创作之路。
第一步:安装Python、配置pip源 -- 这个网上教程很多,此处不再赘述 第二步:安装poetry
pip install pipx --user
pipx install poetry
注:Windows环境转完之后,需要配置环境变量才能使用poetry命令(不过后端工程师,Linux开发环境应该是标配吧~)
poetry常用命令:
- 增加生产环境依赖包
poetry add fastapi # 可以是一个,也可以是多个包同时添加
poetry add uvicorn aiopathlib aioredis
- 添加开发环境依赖包
poetry add --dev isort black pflake8 autoflake mypy pytest coverage
- 激活虚拟环境
poetry shell
- 安装pyproject.toml里面列举的所有依赖包
poetry install
- 小技巧:由于我敲命令时,常常会把poetry错打成poerty,所以在.bash_aliases自定义了alias
alias poerty=poetry
- 服务器上安装生产环境依赖包
poetry install --no-dev
- 展示已安装的包
poetry show --tree
- 只展示生产环境的依赖包
poetry show --tree --no-dev
- 删除生产环境依赖包
poetry remove aiopathlib
- 删除开发环境依赖包
poetry remove --dev autoflake
- 升级所有依赖包版本
poetry update
- 导出依赖到requirements.txt
poetry export --output requirements.txt
- 不激活虚拟环境的情况下执行里面的命令
poetry run pytest
使用poetry这几年来遇到的一些问题:
1. poetry install时,没有走pip的配置,导致用的还是pypi的源,慢得无法忍受
- 这是最近半年内遇到的,环境是Windows,接的是内网 解决
在pyproject.toml里指定默认源, 如:
[[tool.poetry.source]]
name = "tx"
url = "https://mirrors.cloud.tencent.com/pypi/simple/"
default = true
2. poetry install跑到一半时,Crtl+C终止掉,再次执行时就报错
- 忘记是什么时候遇到的了,最近未再相遇 解决
当时,直接删掉poetry.lock,然后重新poetry install就好了;还有一次是使用which python找到虚拟环境所在路径,然后把整个虚拟环境rm -r掉,再用poetry shell重新创建,然后poetry install就好了