python对ini配置文件处理
2015-11-26 20:30
836 查看
实例文件:
[root@docker2 ~]# cat test.ini [base] host = 192.168.88.121 port = 3306 user = root path = /home passwd = 123 [callback] path = /Autops alert = yes count = 1 ftp = no
基础用法:代码片段
>>> cf.read("test.ini") #读取配置文件 ['test.ini'] >>> cf.sections() #片段名 ['base', 'callback'] >>> cf.options("callback") #配置key值/配置项 ['path', 'alert', 'count', 'ftp'] >>> cf.items("callback") #配置选项和值 [('path', '/Autops'), ('alert', 'yes'), ('count', '1'), ('ftp', 'no')] >>> cf.get("base","port") '3306' >>> cf.get("base","passwd") #没有的key的会报错 Traceback (most recent call last): ConfigParser.NoOptionError: No option 'passwd' in section: 'base' >>> cf.set("base","passwd","123") #设定选项,key可以时不存在的 >>> cf.write(open("test.ini","w")) #写入配置文件 >>> cf.getint('base','port') #直接读出int型,但value必须可以转成int 3306 >>> cf.getfloat('base','port') 3306.0 >>> cf.getboolean('callback','alert') #0/no/false/off都视为False, #1/yes/true/on视为True True >>> cf.getboolean('callback','count') True
注意事项:
当配置文件中有定义DEFAULT片段时,在其他片段中找不到的相应的key时,就会到DEFAULT中去查找,如果还是没有就会报错NoOptionError [DEFAULT] dbn=mysql user=root [base] user = autops >>> cf.get('base','user') 'autops' >>> cf.get('base','dbn') 'mysql #dbn的值是default里的
可以像字符串进行变量替换,形成一个大字符串 %s [DEFAULT] conn_str=%(dbn)s -u%(user)s -p%(passwd)s %(db)s dbn=mysql user=root host = 192.168.88.121 port = 3306 [db1] port = 3307 user = root db = autops passwd = 123 [db2] user = monitor db = monitor passwd = 123
结果: >>> cf.get("db1","conn_str") 'mysql -uroot -p123 autops' >>> cf.get("db2","conn_str") 'mysql -umonitor -p123 monitor
相关文章推荐
- python的编码类型转换
- python中的urlencode和urldecode
- Python实战之KNN实现
- 使用python对url编码解码
- windows下python监控系统服务
- python学习 对python的认识
- python学习笔记(13)
- python学习笔记(13)
- python 命令行参数,以及文件操作
- python tab实现
- [python]python中的if, while, for
- python 内部函数,以及lambda,filter,map等内置函数
- python-openpyxl安装
- 如何简单安装NumPy与SciPy(以Windows下为例)
- Beginning Python Chapter2
- python-day1 补充
- python2.7安装 利用pip安装其他镜像配置(解决 Trusted--Host 问题)
- 在Windows上安装NumPy、Matplotlib、SciPy和IPython
- Python 类属性
- Python爬虫实现自动登录、签到