一个不错的配置包

niceconf的Python项目详细描述


niceconf是stdlib rawconfigparser对象的dropin替代品。它使 解析和使用Python脚本中的配置文件 10倍的Python和乐趣。

默认情况下,它读写~/.conf。 如果$/CONF或$CONF中指定的文件不存在,它将是 在第一次导入时创建。


基本用法:
>>> from niceconf import config
>>> config
gmail
my-database
secret-stuff
>>> config['gmail']
[gmail]
username = rick@gmail.com
password = wubalubadubdub
>>> config['gmail']['username']
'rick@gmail.com'
>>> config['gmail']['password']
'wubalubadubdub'
添加或设置配置文件选项:
>>> config['my-database']['port'] = 3306
>>> config['my-database']['port']
'3306'
删除配置文件选项:
>>> del config['secret-stuff']['burn-after-reading']
>>> config['secret-stuff']['burn-after-reading']
NoOptionError: No option 'burn-after-reading' in section: 'secret-stuff'
添加节(任何有效的dict like都可以添加为节):
>>> config['stackoverflow'] = {'username': 'guido',
                               'password': 'pa$$word1'}
>>> config['stackoverflow']
[stackoverflow]
username = guido
password = pa$$word1
删除节:
>>> del config['stackoverflow']
>>> config['stackoverflow']
NoSectionError: No section: 'stackoverflow'
写入文件(默认覆盖):
>>> config.save()
读取另一个配置文件:
>>> config.read('/path/to/conf')
['/path/to/conf']
>>> config
gmail
my-database
secret-stuff
first_section_of_other_conf
second_section_of_other_conf
将conf分解为函数参数
>>> print_kwargs(**config['gmail'])
{'username': 'rick@gmail.com', 'password': 'wubalubadubdub'}

另外,config对象是rawconfigparser的一个实例,因此您可以 像以前一样使用这些方法。这意味着config是一个dropin 替换configparser。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java SUN次要代码309含义   java避免为空元素生成XML自关闭标记,并生成自定义的<XML>开始标记   java使用json和restful将数组数据从本地sqlite数据库插入SQL Server   java Spring Boot 1.5.9字符编码问题   LInkedIn讨论中的java 401错误   位图Java:检查多个位向量/位集是否相交的最快方法?   macos如何让Java应用程序以图标出现在Mac OS X dock中   java如何删除netbeans中的@SuppressWarnings(“未使用的”)?   apachestorm中的java自定义序列化   java可以退出代码还是应该终止main?   递归如何在Java中递归地绘制简单的线条?   unicode在Java中确定特定字体是否可以呈现特定字符   打开并阅读带有Selenium/Katalon(Java)特定标题的电子邮件文本(来自Gmail)