我一直想通过从一个简单的文本文件中读取它们来定义 Python 中的变量。因此,我对 ConfigParser、ConfigObj、PyYaml 和 JSON 做了一些阅读。目前我对 ConfigObj 和 PyYaml 特别感兴趣。但是,我还没有设法以干净的方式做我想做的事情。
使用 ConfigObj 和 PyYaml,我可以将外部文本文件中定义的所有内容加载到字典中。我想通过提取所有键值对并将它们作为单独的变量存储到我的交互式工作区中来继续使用这本字典。
这是迄今为止我一直在使用的 PyYaml 方式:
import yaml
config_file = open('myFile', 'r')
config = yaml.read(config_file)
keys = config.keys()
values = config.values()
for i in range(len(keys)):
string = keys[i] + '=' + str(values[i])
eval(string)
eval
由于可能允许各种恶意事情发生,使用有时会令人不悦。因此,我想知道 PyYaml 和/或 ConfigObj 是否具有实现上述功能的内置功能?