丹凤千字科普:py在圈子里的意思(详细资料介绍)


丹凤千字科普:py在圈子里的意思(详细资料介绍)  

简介

Poetry是一款Python的依赖管理和打包工具,它能够方便地管理项目所依赖的库。虽然Pipev也提供了类似的工具,但我感觉Poetry更加简洁友好。虽然它的打包发布功能我们可能不太常用,但其虚拟环境管理功能非常方便。

安装与升级

安装Poetry非常简单,只需执行`pip install poetry`命令即可。使用`poetry -V`命令可以查看版本信息。要升级Poetry,只需执行`poetry self update`命令。在使用Poetry之前,我们需要进行一些设置,主要是配置虚拟环境的安装位置。

设置项

以下是Poetry的一些重要设置项及其说明:

* cache-dir:缓存目录配置,Poetry安装的包源文件都会缓存到这个目录。不同操作系统的默认目录如下:macOS:~/Library/Caches/pypoetry,Windows: C:UsersAppDataLocalpypoetryCache,Unix:~/.cache/pypoetry。

* virtualenvs.create:默认为true,如果当前工程的虚拟环境不存在,就创建一个。

* virtualenvs.in-project:指定虚拟环境的创建位置。设置为true时,Poetry会在项目根目录创建虚拟环境。

* virtualenvs.path:虚拟环境创建的目录,如果上面的in-project为true,此配置就无效。

配置命令

* 查看所有配置:`poetry config --list`。

* 查询单个配置:`poetry config virtualenvs.path`。

* 添加或更新配置:例如,`poetry config virtualenvs.in-project true`。

* 删除配置:例如,`poetry config virtualenvs.path --unset`。

基本使用

* 初始化工程:创建新工程时,可以执行`poetry new poetry-demo`命令。对于已存在的工程,可以执行`cd pre-existing-project`然后运行`poetry init`进行初始化。初始化后,你将得到如下目录结构,其中包括pyproject.toml文件,它包含工程的配置和依赖库信息。

* 创建工程后,可以使用`poetry install`命令从当前项目读取pyproject.toml文件中的依赖性并安装它们。如果当前目录中有poetry.lock文件,它将使用其中的确切版本。

* 更新安装包时,可以使用`update`命令。

* 添加依赖库时,可以使用`poetry add`命令,例如`poetry add requests`。还可以从git仓库或本地文件安装依赖。

* 移除已经安装的依赖包,可以使用`poetry remove`命令。

* `poetry show`命令用于显示已安装的包和版本号,以及其他相关信息。

* `poetry run`命令允许我们执行虚拟环境内的命令,例如`poetry run python test.py`。我们还可以在pyproject.toml文件中配置自定义的脚本命令。

其他命令

* `poetry shell`命令用于进入虚拟环境。

* `poetry check`命令用于检查pyproject.toml配置是否正确。

* `poetry search`用于查询包,例如`poetry search requests`。

* `poetry export`命令用于将依赖包导出为requirements.txt格式。

* `poetry env`命令用于管理虚拟环境,例如使用指定环境的python、显示当前虚拟环境信息、删除虚拟环境等。

* `poetry cache`命令用于管理缓存,例如查看缓存列表、清除指定缓存等。

关于依赖包的版本关系

Poetry支持类似webpack中的版本关系表示方法,例如^2.3.0、~2.3.0等。这些表示方法定义了允许的版本范围。例如,^1.2.3表示大于等于1.2.3但小于2.0.0的版本。其他版本表示方法以此类推。这些版本关系使得依赖管理更加灵活和方便。

  丹凤千字科普:py在圈子里的意思(详细资料介绍)