为Python程序,内置模块(ConfigParser)或独立项目(ConfigObj)或使用YAML数据序列化格式创 build 置文件哪个更好?我听说ConfigObj比ConfigParser更易于使用,即使它不是内置库也是如此。我还读到PyYAML易于使用,尽管YAML需要花费一些时间。除了易于实现之外,哪个是创 build 置/配置文件的最佳选择?

最佳答案

至少使用ConfigObj非常简单,而且与YAML相比,ini文件通常更简单(且使用更广泛)。对于更复杂的情况,包括验证,默认值和类型,ConfigObj提供了一种通过configspec验证执行此操作的方法。

使用ConfigObj读取ini文件的简单代码:

from configobj import ConfigObj

conf = ConfigObj('filename.ini')
section = conf['section']
value = section['value']

它会自动为您处理列表值,并允许多行值。如果您修改配置文件,则可以在保留顺序和注释的同时将其写回。

请参阅这些文章以获取更多信息,包括类型验证的示例:
  • http://www.voidspace.org.uk/python/articles/configobj.shtml
  • http://www.blog.pythonlibrary.org/2010/01/01/a-brief-configobj-tutorial/
  • http://showmedo.com/videotutorials/video?name=10620000&fromSeriesID=1062
  • 关于python - ConfigObj/ConfigParser与将YAML用于Python设置文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3444436/

    10-12 23:28