基础
要使用 Rye,您需要拥有一个基于 pyproject.toml
的 Python 项目。对于本指南,您可以使用 rye init
创建一个新的文件夹,其中包含一个新项目
rye init my-project
cd my-project
将创建以下结构
.
├── .git
├── .gitignore
├── .python-version
├── README.md
├── pyproject.toml
└── src
└── my_project
└── __init__.py
要知道的
init
命令接受许多选项来自定义它生成的內容。运行 rye init --help
以查看您安装的版本中可用的所有选项。
pyproject.toml
用于存储有关项目的元数据以及一些 Rye 配置。大多数 Rye 的命令都需要 pyproject.toml
才能正常工作。请注意,Rye 目前不支持基于 setup.py
的项目。请注意,当 Rye 初始化项目时,它还会写入一个 .python-version
文件。此文件包含应为此项目使用的 Python 版本号。可以通过运行 rye pin
来更改它。例如,要告诉 Rye 使用 Python 3.10
$ rye pin 3.10
首次同步
完成后,您可以使用 rye sync
获取第一次同步。之后,Rye 将在 .venv
中创建一个虚拟环境,并将锁定文件写入 requirements.lock
和 requirements-dev.lock
。
rye sync
Rye 管理的虚拟环境位于 pyproject.toml
旁边的 .venv
中。第一次运行时,您会注意到 Rye 会自动为您下载并安装兼容的 CPython 解释器。如果您在系统上已经安装了另一个 Python,它将不会被使用!有关此行为的更多信息,请阅读有关工具链的信息。
您可以像往常一样激活它并使用它,但有一个显著的例外:其中的 Python 安装不包含 pip
。如果您已正确安装了 Rye 并启用了 shims,在同步后,您可以运行 python
,您将自动在该虚拟环境中操作,即使它没有启用。您可以通过打印出 sys.prefix
来验证这一点
python -c "import sys; print(sys.prefix)"
它将打印出已管理虚拟环境的完整路径。
添加依赖项
使用 add
命令向您的项目添加依赖项。
rye add "flask>=2.0"
然后使用 rye sync
将依赖项安装到虚拟环境中。如果您想从自定义索引添加包,您必须首先配置来源。
列出依赖项
您可以调用 rye list
来获取项目所有已安装依赖项的转储。请注意,这只会列出实际安装的依赖项,因此请确保首先进行 sync
。
rye list
删除依赖项
使用 remove
命令从项目中再次删除依赖项。
rye remove flask
使用项目
要运行虚拟环境上下文中的可执行文件,您可以使用 run
命令。例如,要使用 black
,请将其添加到项目中,同步虚拟环境,并像这样在当前目录上运行它
rye add black
rye sync
rye run black .
如果您希望直接使用这些命令,您将需要像往常一样激活虚拟环境。要激活虚拟环境,请使用标准方法
. .venv/bin/activate
.venv\Scripts\activate
要再次停用它,请运行 deactivate
deactivate
检查项目
rye show
命令可以打印出有关项目状态的信息。只需运行 rye show
,您就可以看到使用了哪个 Python 版本、虚拟环境的位置等等。
rye show
可执行项目
要生成一个旨在提供可执行脚本的项目,请使用 rye init --script
rye init --script my-project
cd my-project
将创建以下结构
.
├── .git
├── .gitignore
├── .python-version
├── README.md
├── pyproject.toml
└── src
└── my_project
└── __init__.py
└── __main__.py
pyproject.toml
将使用包含指向 __init__.py
的 main()
函数的 my-project
脚本的 [project.scripts]
部分生成。同步更改后,您可以使用 rye run my-project
运行该脚本。
rye sync
rye run my-project