python ConfigParser操作配置文件

来源:互联网 发布:2016年4月非农数据 编辑:程序博客网 时间:2024/05/22 00:11
import ConfigParserimport osconfig = ConfigParser.ConfigParser()#读取配置文件中的数据config.read("info.ini")#直接读取配置文件内容sections = config.sections()#以列表的形式  如果没有info.ini文件  则会输出[]  否则输出所有的标记print  sectionsoptions = config.options("system")#以列表的形式  输出所有标记的键print optionsitems = config.items("description")#以列表的形式  输出所有的键值对,键全部变为小写print items#获取标记中指定键的值context1 = config.get("main","version")#得到section中option的值,返回为string类型print context1context2 = config.get("system","process3")print context2os.system(context2) #打开系统服务#得到section中option的值,返回为int类型,还有相应的getboolean()和getfloat() 函数。#context3 = config.getint("main","version")#ValueError: invalid literal for int() with base 10: '1.1'   只能取int型的数据context3 = config.getint("main","age")print context3,type(context3)context4 = config.getfloat("main","version")print context4,type(context4)context5 = config.getboolean("description","end")print context4,type(context4)#向配置文件中写入数据# add_section(section) 添加一个新的sectiontry:    config.add_section("section")    config.set("section","number",101)except Exception,e:    print e#存在此项  则会更改config.set("main","age",00)#新添加一个选项config.set("main","UID","123455678")config.write(open("info.ini","w"))# 对section中的option进行设置,需要调用write将内容写入配置文件

执行结果:

['main', 'system', 'description']
['process1', 'process2', 'process3', 'process4']
[('content', '"this is conf info"'), ('name', '"python"'), ('end', '0')]
1.1
services.msc
11 <type 'int'>
1.1 <type 'float'>
1.1 <type 'float'>



【info.ini】

[main]
version = 1.1
age = 0
uid = 123455678


[system]
process1 = notepad
process2 = calc
process3 = services.msc
process4 = cmd


[description]
content = "this is conf info"
name = "python"
end = 0


[section]
number = 101

0 0