如何用python读取/etc/config.d / ...?

时间:2013-02-19 11:08:49

标签: python configuration-files

我希望发行版拿起我的python应用程序,这样他们就可以创建一个/ etc / myapp配置文件和/etc/myapp.d/文件夹,用户可以在/ etc / myapp中将覆盖设置放在其中。< / p>

它应该支持以下(或多或少标准)配置样式。

# settingx does ...
settingx=1

settingy = 0

settingz = "--this x --that y"

在我的python应用程序中,我想使用settingx,sety等。

最好的方法是什么?

2 个答案:

答案 0 :(得分:0)

使用ConfigParser,因为这是一种可接受的设置交换格式,它会附加到python发行版中。

import ConfigParser

config = ConfigParser.RawConfigParser()

config.add_section('myapp')
config.set('myapp', 'settingx', 1)
config.set('myapp', 'settingy ', 0)
config.set('myapp', 'settingz ', '--this x --that y')

# Writing our configuration file to 'example.cfg'
with open('/etc/myapp/example.cfg', 'wb') as configfile:
    config.write(configfile)

答案 1 :(得分:0)

如果您计划使用RPM分发您的应用,请查看此内容 - http://fedoraproject.org/wiki/How_to_create_an_RPM_package

或者查看distutils

如果您打算只使用某种安装脚本,那么它可以自己创建文件和目录。