【发布时间】:2019-01-05 16:05:18
【问题描述】:
我正在开发一个包含 cli 组件的包,您可以从中开始一个新项目。这个新创建的项目将严重依赖各种配置、docker 和其他文件。我想要一个 cli 命令,比如myproject init,它会创建一个新目录,并在其中复制各种文件,让用户的生活更轻松。
现在,项目本身是 pip 可安装的,所以我添加到项目中的每个文件都将位于 site-packages 目录中的某个位置。将这些示例配置文件添加到项目中似乎不是一个好的选择,因为很难找到它们的安装位置。
目前我发现的最佳解决方案是将配置作为字符串添加到 python 文件中:
INIT_FILE_MODEL_TEMPLATE = """---
version: 1
kind: experiment
logging:
level: INFO
model:
# set you model
"""
然后在调用 init 命令时将它们转储到实际文件中。
这个问题有更好的选择吗?
【问题讨论】:
-
您是否正在尝试做类似于“django-admin startproject mysite”所做的事情,但在 python 中进行命令行实用程序开发?
-
我不太了解 django 的工作原理,但乍一看是的,它是类似的。基本上是创建一些样板功能和配置
标签: python python-3.x configuration configuration-files