如果我有一个Python包,foo
,我想要一个在包安装过程中用户定义的路径变量(foo.ext_path = '/Home/User_name/Data_files/foo_data'
或者其他东西),那么最好/推荐/最pythonic方式是什么完成这个?我不想在python包中包含数据;这是运行foo所必需的,也是用户提供的必需品。
答案 0 :(得分:1)
必需的配置通常属于外部配置文件中属于的类别。
软件包可以定义一个配置文件路径,在posix中这通常是/etc
下的内容,并要求用户使用适当的条目为其配置填充它。
最佳做法是让软件包创建示例配置文件,例如/etc/my_package/my_package.example
或类似文件,以显示所有可用的配置条目和示例值。
Python已经通过ConfigParser内置了对配置文件的支持,尽管基于YAML的配置文件通常更容易使用,而且通常更常见。