Python 解析配置模块之ConfigParser详解文档
更新时间:2024-06-01 20:32:01 阅读量: 综合文库 文档下载
- python推荐度:
- 相关推荐
Python 解析配置模块之ConfigParser详解
2014-11-20 13:35:36
1 基本的读取配置文件-read(filename) 直接读取ini文件内容-sections() 得到所有的section,并以列表的形式返回-options(section) 得到
1.基本的读取配置文件
-read(filename) 直接读取ini文件内容
-sections() 得到所有的section,并以列表的形式返回 -options(section) 得到该section的所有option -items(section) 得到该section的所有键值对
-get(section,option) 得到section中option的值,返回为string类型
-getint(section,option) 得到section中option的值,返回为int类型,还有相应的getboolean()和getfloat() 函数。
2.基本的写入配置文件
-add_section(section) 添加一个新的section
-set( section, option, value) 对section中的option进行设置,需要调用write将内容写入配置文件。
3.基本例子 test.conf
1 [sec_a] 2 a_key1 = 20 3 a_key2 = 10
4 5 [sec_b] 6 b_key1 = 121 7 b_key2 = b_value2 8 b_key3 = $r 9 b_key4 = 127.0.0.1
parse_test_conf.py
1 import ConfigParser
2 cf = ConfigParser.ConfigParser() 3 #read config 4 cf.read(\) 5 # return all section 6 secs = cf.sections() 7 print 'sections:', secs 8
9 opts = cf.options(\) 10 print 'options:', opts 11
12 kvs = cf.items(\) 13 print 'sec_a:', kvs 14
15 #read by type
16 str_val = cf.get(\, \) 17 int_val = cf.getint(\, \) 18
19 print \, str_val 20 print \, int_val 21
22 #write config 23 #update value
24 cf.set(\, \, \) 25 #set a new value
26 cf.set(\, \, \) 27 #create a new section 28 cf.add_section('a_new_section')
29 cf.set('a_new_section', 'new_key', 'new_value') 30
31 #write back to configure file 32 cf.write(open(\, \))
得到终端输出:
1 sections: ['sec_b', 'sec_a'] 2 options: ['a_key1', 'a_key2']
3 sec_a: [('a_key1', \), ('a_key2', '22')] 4 value for sec_a's a_key1: i'm value 5 value for sec_a's a_key2: 22
更新后的test.conf
1 [sec_b]
2 b_newkey = new-value 3 b_key4 = 127.0.0.1 4 b_key1 = 121 5 b_key2 = b_value2 6 b_key3 = new-$r 7 8 [sec_a]
9 a_key1 = i'm value 10 a_key2 = 22 11
12 [a_new_section] 13 new_key = new_value
4.Python的ConfigParser Module中定义了3个类对INI文件进行操作。分别是RawConfigParser、ConfigParser、SafeConfigParser。RawCnfigParser是最基础的INI文件读取类,ConfigParser、SafeConfigParser支持对%(value)s变量的解析。 设定配置文件test2.conf
1 [portal]
2 url = http://%(host)s:%(port)s/Portal 3 host = localhost 4 port = 8080
使用RawConfigParser:
1 import ConfigParser 2
3 cf = ConfigParser.RawConfigParser() 4
5 print \ 6 cf.read(\) 7 print cf.get(\, \) 8
9 print \ 10 cf.set(\, \, \) 11 print cf.get(\, \)
得到终端输出:
1 use RawConfigParser() read 2 http://%(host)s:%(port)s/Portal 3 use RawConfigParser() write
4 %(host)s:%(port)s
改用ConfigParser:
1 import ConfigParser 2
3 cf = ConfigParser.ConfigParser() 4
5 print \ 6 cf.read(\) 7 print cf.get(\, \) 8
9 print \
10 cf.set(\, \, \) 11 print cf.get(\, \)
得到终端输出:
1 use ConfigParser() read 2 http://localhost:8080/Portal 3 use ConfigParser() write 4 localhost:8080
改用SafeConfigParser:
1 import ConfigParser
2
3 cf = ConfigParser.SafeConfigParser() 4
5 print \ 6 cf.read(\) 7 print cf.get(\, \) 8
9 print \ 10 cf.set(\, \, \) 11 print cf.get(\, \)
得到终端输出(效果同ConfigParser):
1 use SafeConfigParser() read 2 http://localhost:8080/Portal 3 use SateConfigParser() write 4 localhost:8080
正在阅读:
Python 解析配置模块之ConfigParser详解文档06-01
小学二年级上册体育课教案06-26
情趣篇——教你如何用暧昧短信挑逗她06-10
护理记录存在问题及对策11-25
五年级品德与社会期末试卷05-26
新加坡概况10-25
中国科教仪器设备行业市场调查研究报告(目录) - 图文06-23
2013年浙江公务员考试行测分模块备考法及备考指南05-14
信访工作者访谈调查提纲01-23
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- ConfigParser
- 详解
- 模块
- 解析
- 配置
- 文档
- Python
- 金属热处理工艺学课后习题答案及资料
- 二00七年象山县第三届中小学生棋类比赛
- 40米架桥机计算书
- 2018人教版部编本二年级下册道德与法治《试种一粒籽》公开课教案
- 冀教版六年级语文下册单元测试题含答案
- SD卡存储采集数据电路设计毕业论文 - 图文
- 揭开上帝终极底牌:癌症自愈源于心脏
- 新闻稿件中的常见错误分析
- 卫生法学作业及参考答案(要点)
- 管理学关于激励理论的梳理
- 新店镇园北区土地整理工程
- SUB200型超探操作简规
- 金融学2014年12月在线作业(随机)2答案
- 能源公司采购控制程序
- 生物化学(名词解释及简答题)
- 2016年二级建造师继续教育题库
- 计量经济学实验报告
- 上市公司执行企业会计准则监管问题解答(1-5期)
- 09-10年第二学期《河流动力学》复习题
- (目录)2017-2022年上海市特色小镇建设规划与运营管理分析报告