对于不是xml(最好有python绑定)的c,什么是好的配置文件库?

对于不是xml(最好有python绑定)的c,什么是好的配置文件库?,python,c,configuration-management,Python,C,Configuration Management,我正在为不是xml的c寻找一个好的配置文件库。最理想的情况是,我真的希望它也有python绑定。我提出的最佳选择是在c和python中使用JSON库。您会推荐什么,或者您更喜欢哪种读取/写入配置设置的方法?您可以使用纯python解决方案,如,然后只需使用CPython API查询设置。这假设您的应用程序嵌入了Python。如果没有,并且如果您正在发布Python,那么只嵌入它可能是有意义的。如果是动态链接,你的C.exe就不会变大,你将拥有Python的所有灵活性。尽管受到技术人员的憎恨和Mi

我正在为不是xml的c寻找一个好的配置文件库。最理想的情况是,我真的希望它也有python绑定。我提出的最佳选择是在c和python中使用JSON库。您会推荐什么,或者您更喜欢哪种读取/写入配置设置的方法?

您可以使用纯python解决方案,如,然后只需使用CPython API查询设置。这假设您的应用程序嵌入了Python。如果没有,并且如果您正在发布Python,那么只嵌入它可能是有意义的。如果是动态链接,你的C.exe就不会变大,你将拥有Python的所有灵活性。

尽管受到技术人员的憎恨和Microsoft的否认,INI文件实际上非常受用户欢迎,因为它们易于理解和编辑。如果您的库还不支持它们,那么为它们编写解析器也非常简单。

:)

如果您还没有与Python结婚,请尝试。它最初是为配置而设计的。

JSON有什么问题?如果您将其扩展到YAML,它可能更易于阅读。你预见到了什么问题?JSON没有什么错,我喜欢JSON。我唯一的犹豫是它严格的语法。我希望非程序员能够轻松地读取/编辑配置文件,更多地使用空白(应该提到这一点)。亚姆就是这么做的!这正是我想要的,谢谢-1:ini文件有一些奇怪的限制,除了在非常简单的情况下,它们很难使用。对于那些简单的情况,一个满是赋值语句的Python文件可能更好。例如,对于PHP和Samba,它们似乎可以正常工作。这些奇怪的限制是什么?INI的结构(由configfile解析)是扁平的。没有结构。因此,节具有复合名称以强制结构。例如,日志初始化文件很难正确编辑,因为节名称取决于其他ini设置。