如何更改 运行 `poetry new` 时生成的默认 `pyproject.toml`
How to change default `pyproject.toml` that is generated when running `poetry new`
当我 运行 poetry new [directory]
它在目录中生成一个 pyproject.toml
但我总是发现我对其进行了相同的初始更改,例如
- python 版本(从 2.7 到 3.8)
- pytest 版本(从 4.6 到 5.4)
我如何更改这些默认值,以便当我 运行 poetry new
python 和 pytest 有我想要的版本时?
pyproject.toml
中指定的python版本是否基于系统的python版本?如果是这样,我认为我无法更改系统的 python 版本,因为我使用的是 mac,它可能会弄乱我的 OS。或者我可以吗?
在 python 中创建项目模板的标准方法是使用 cookiecutter
实用程序。它的文档非常好,您可以轻松开始创建自己的模板,但我将使用您提供的示例进行简短介绍。
Cookiecutter 使用模板语言,允许您指定项目模板的哪些部分可以参数化。在您的情况下,这将是项目名称(可自由选择),也可能是 python 和 pytest 版本(来自值列表)。此信息将存储在一个名为 cookiecutter.json
的文件中(更多有关该文件外观的示例 here),该文件大致如下所示:
{
"full_name": "<your name>",
"email": "<your name>@<email>.com",
"project_name": "default",
"version": "0.1.0",
"python_version": ["3.8", "2.7"],
"pytest_version": ["5.4", "4.6"]
}
现在您需要:
- 运行
poetry new my_cookie
为模板创建基础
- 将
cookiecutter.json
放入生成的文件夹
- 将顶层文件夹下所有提及的项目名称替换为
{{cookiecutter.project_name}}
,包括文件和目录
- 对
cookiecutter.json
中的所有其他参数重复该步骤
- 如果完成,请通过 运行ning
cookiecutter path/to/my_cookie
从您的模板创建一个项目
- 如果您遇到困难,请查看 this sample project template 或我链接的文档以获取指导
当我 运行 poetry new [directory]
它在目录中生成一个 pyproject.toml
但我总是发现我对其进行了相同的初始更改,例如
- python 版本(从 2.7 到 3.8)
- pytest 版本(从 4.6 到 5.4)
我如何更改这些默认值,以便当我 运行 poetry new
python 和 pytest 有我想要的版本时?
pyproject.toml
中指定的python版本是否基于系统的python版本?如果是这样,我认为我无法更改系统的 python 版本,因为我使用的是 mac,它可能会弄乱我的 OS。或者我可以吗?
在 python 中创建项目模板的标准方法是使用 cookiecutter
实用程序。它的文档非常好,您可以轻松开始创建自己的模板,但我将使用您提供的示例进行简短介绍。
Cookiecutter 使用模板语言,允许您指定项目模板的哪些部分可以参数化。在您的情况下,这将是项目名称(可自由选择),也可能是 python 和 pytest 版本(来自值列表)。此信息将存储在一个名为 cookiecutter.json
的文件中(更多有关该文件外观的示例 here),该文件大致如下所示:
{
"full_name": "<your name>",
"email": "<your name>@<email>.com",
"project_name": "default",
"version": "0.1.0",
"python_version": ["3.8", "2.7"],
"pytest_version": ["5.4", "4.6"]
}
现在您需要:
- 运行
poetry new my_cookie
为模板创建基础 - 将
cookiecutter.json
放入生成的文件夹 - 将顶层文件夹下所有提及的项目名称替换为
{{cookiecutter.project_name}}
,包括文件和目录 - 对
cookiecutter.json
中的所有其他参数重复该步骤
- 如果完成,请通过 运行ning
cookiecutter path/to/my_cookie
从您的模板创建一个项目
- 如果您遇到困难,请查看 this sample project template 或我链接的文档以获取指导