在为Python程序创建设置文件时,内置模块(ConfigParser)和独立项目(ConfigObj)哪个更好,还是使用YAML数据序列化格式?我听说ConfigObj比ConfigParser更容易使用,尽管它不是一个内置库。我也读到过PyYAML很容易使用,尽管它需要一些时间来使用。除了易于实现之外,哪一项是创建设置/配置文件的最佳选择?
发布于 2010-08-12 08:19:56
使用ConfigObj读取ini文件的简单代码:
from configobj import ConfigObj
conf = ConfigObj('filename.ini')
section = conf['section']
value = section['value']它自动为您处理列表值,并允许多行值。如果您修改了配置文件,您可以将其写回,同时保留顺序和注释。
有关更多信息,请参阅这些文章,包括类型验证的示例:
发布于 2010-08-10 06:28:16
ConfigParser有一个非常糟糕的API,ConfigObj应该是好的,但我从来没有用过它,对于ini文件,我通常实现我自己的解析器。
然而,类ini格式无论如何都不能很好地处理不同的类型、序列或递归映射,所以我只使用yaml。它很容易阅读和编辑的编辑器,有一个标准的解析这些文件,你没有提到的缺点,如ini的格式。
https://stackoverflow.com/questions/3444436
复制相似问题