大家好,我是明哥。
发展壮大离不开广大客户长期以来的信赖与支持,我们将始终秉承“诚信为本、服务至上”的服务理念,坚持“二合一”的优良服务模式,真诚服务每家企业,认真做好每个细节,不断完善自我,成就企业,实现共赢。行业涉及发电机维修等,在重庆网站建设公司、成都营销网站建设、WAP手机网站、VI设计、软件开发等项目上具有丰富的设计经验。
之前在介绍一些管理 Python 虚拟环境的工具时,比如 pipenv,virtualenv 等,总有读者留言,希望我整一期 poetry 的。
在接触 poetry 之前,我以为 pipenv 已经是我心目中最理想的虚拟环境工具,直到 19年 看过@李辉 的一篇文章(http://greyli.com/do-not-use-pipenv/)才让我开始动摇,原来一直轻量使用的我,一直没有感觉到 pipenv 的各种问题,咱也不知道经过这几年的发展,pipenv 是否有所改进?不过我想对于曾经 "深受其害" 的用户来说,可能早就投入了 poetry 的怀抱。
废话不多说,直接上干货。
poetry提供多种安装方式,个人推荐从以下2种方式中选择:
方式一:(推荐)使用在线脚本进行安装,是最为推荐的安装方式
- $ curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python
方式二:(pip) 官方不建议这么做,因为有可能会造成依赖冲突,可以考虑用 pipx 或 pipsi
- $ pip install --user poetry
安装后,可以使用如下命令检测是否可用
- $ poetry --version
- Poetry version 1.1.4
如果你是在一个已有的项目里使用 Poetry,你只需要执行 poetry init 命令来创建一个 pyproject.toml 文件:
- $ poetry init
而如果是新建 一个项目,可以使用这个命令
- $ poetry new demo-priject
运行完后,在当前目录下就会多一个 demo-project 的目录,这个目录下的文件结构如下
- $ tree demo-priject
- demo-priject
- ├── README.rst
- ├── demo_priject
- │ └── __init__.py
- ├── pyproject.toml
- └── tests
- ├── __init__.py
- └── test_demo_priject.py
如果要把项目代码放入到 src 目录下,在创建项目时,可以加上 --src 参数。
使用 poetry install 命令创建虚拟环境(确保当前目录有 pyproject.toml 文件):
- $ poetry install
这个命令会读取 pyproject.toml 中的所有依赖(包括开发依赖)并安装,如果不想安装开发依赖,可以附加 --no-dev 选项。如果项目根目录有 poetry.lock 文件,会安装这个文件中列出的锁定版本的依赖。如果执行 add/remove 命令的时候没有检测到虚拟环境,也会为当前目录自动创建虚拟环境。
创建虚拟环境后,如果想要在虚拟环境下执行命令,比如去执行脚本,去使用 pip list 等等。
可以在项目目录下,使用如下命令
- $ poetry run
比如我查看该虚拟环境中安装了哪些包
- $ poetry run pip list
再比如我想在该虚拟环境下执行 app.py
- $ poetry run python app.py
每次在虚拟环境下做点啥事,命令前面都要加上 poetry run,有点太麻烦了。
这时可以使用下面这条命令,直接激活当前的虚拟环境
- $ poetry shell
安装包
- $ poetry add
添加 --dev 参数可以指定为开发依赖
- $ poetry add pytest --dev
查看所有安装的依赖包
- $ poetry show
加上 --tree 可以查看他们的依赖关系
- $ poetry show --tree
加上 --outdated 可以查看可以更新的依赖
- $ poetry show --outdated
如果要更新依赖可以执行这个命令
- # 更新全部
- $ poetry update
- # 更新某个依赖
- $ poetry update foo
想卸载某个包,用这个命令
- $ poetry remove foo
Poetry 的配置存储在单独的文件中,比 Pipenv 设置环境变量的方式要方便一点。配置通过 poetry config 命令设置,比如下面的命令可以写入 PyPI 的账号密码信息:
- $ poetry config http-basic.pypi username password
下面的命令设置在项目内创建虚拟环境文件夹:
- $ poetry config settings.virtualenvs.in-project true
另一个常用的配置是设置 PyPI 镜像源,以使用豆瓣提供的 PyPI 镜像源为例,你需要在 pyproject.toml 文件里加入这部分内容:
- [[tool.poetry.source]]
- name = "douban"
- url = "https://pypi.doubanio.com/simple/"
本文转载自微信公众号「Python编程时光」,可以通过以下二维码关注。转载本文请联系Python编程时光公众号。
分享文章:终于可以摆脱Pipenv这坑货了
标题路径:http://www.36103.cn/qtweb/news22/21022.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联