带有 .py 文件的配置文件

Bas*_*asj 4 python ini parsing configuration-files

有人告诉我,这样做并不是一个很好的做法(尽管它存在于Python 模式的主要答案中,用于在整个应用程序中共享配置):

配置文件.py

SOUNDENABLED = 1
FILEPATH = 'D:\\TEMP\\hello.txt'
Run Code Online (Sandbox Code Playgroud)

主要.py

import configfile

if configfile.SOUNDENABLED == 1:
    ....

f = open(configfile.FILEPATH, 'a')
...
Run Code Online (Sandbox Code Playgroud)

许多人使用 INI 文件通过ConfigParser模块或iniparse或其他类似模块进行本地配置这一事实证实了这一点。

configfile.py问题:为什么使用 INI 文件进行本地配置 + INI 解析器 Python 模块比仅导入包含正确配置值作为常量的文件更好?

iva*_*eev 5

这里唯一需要担心的是 a.py可以拥有任意 Python 代码,因此它有可能以任意方式破坏您的程序。

如果您可以相信您的用户会负责任地使用它,那么此设置没有任何问题。事实上,在我之前的一份工作中,我们就是这样做的,没有任何我意识到的问题。恰恰相反:它允许用户通过自动生成重复部分并导入其他配置文件来消除重复。

另一个问题是,如果您有很多文件,则配置文件最好与常规代码文件分开,以便用户知道他们应该能够编辑哪些文件(上面的链接也解决了这个问题)。