Python进阶,ConfigParse
短信预约 -IT技能 免费直播动态提醒
原文链接和公众号
文章链接:
http://note.youdao.com/noteshare?id=dfec323b2c6509d7189453ec730b3870⊂=7D7493D6D746490BA55C0997FF1BC465
更多文章教程:
Python雁横(或者微信搜索:py_0123),如果需要一个学习交流的地方可以加我的QQ群:719139688
介绍:
- 今天想写一篇文章来记录一下在Python中
ConfigParser
这个模块的使用方法 - ini格式的配置文件无论是在Windows还是Linux这样的操作系统中,都是十分常见的格式。常见的东西,python里面往往都有一个支持它的东西
ini配置文件简介
- 后缀不一定是ini,像
ini
,cfg
,conf
,txt
都可以,本质上就是text文本文件 - ini配置文件内容由,节,键(或者称为选项),值三部分构成。
- [section_1]
- option_1 = value_1
- option_2 = value_2
- [section_2]
- ...
- 另外有一个特殊的节(section),就是默认节(
DEFAULT
),可以省略,另外记住,大小写的敏感的。 - 注释,在
;
后面的文字,直到结尾都是注释 - ini文件示例:
;这是一段注释 [DEFAULT] option_1 = 1 [section_1] option_2 = 2
ConfigParser模块简介
导入
from configparser import ConfigParser
#实例化一个对象
config = ConfigParser()
这个实例的方法
config.sections()
#返回所有节点名称(一个列表的形式),但是不包括DEFAULT
config.has_section(section)
#查询section(节点)是否存在
config.options(section)
#返回指定节点(section)里面的所有选项(键)
config.read(filenames,encoding=None)
#阅读并解析,filenames为一个包含文件名的列表,单个文件也被允许,不存在的文件被忽略,最后返回一个成功读取的文件列表
config.read_file(fn,source=None)
#解析一个文件对象(通俗的讲就是你打开一个文件之后,这就是一个文件对象)
config.read_string(string)
#先将字符串转变问文件对象,然后执行上面那个方法
config.dict(dictionary)
#解析字典,字典里面必须嵌套一个字典,如:
#{"section":{"option":"value"}}
config.get(section,option)
#获取具体的值
#这个后面的参数有点多,先不用管,只需要知道两个参数即可
config.getint(section,option)
#与get相同,只是将值转变为int类型
config.getfloat(section,option)
#与get相同,只是将值转变为float类型
config.getboolean(section,option)
#与get相同,只是将值转变为bool类型
#0,false,no,off 都会转变为 False
#1,true,yes,on 都会转变为 True
#而且不分大小写
config.items(section=_UNSET,raw=False,vars=None)
#给出了section,则返回一个列表,里面的值是由option,value组成的元祖
#否则,返回一个ItemsView对象(是一个字典)(估计还有生成器),组成为section(字符串)为字典的键,节点对象为字典的值。
#还可以对值进行get操作
config.remove_section(section)
#删除给出的节点和所有选项
config.remove_option(section,option)
#删除某个选项
config.set(section,option,value)
#设置给定选项
#必须在已有节点设置
#可以设置默认节点
config.write(fn,space_around_delimiters=True)
#fn为一个文件对象(open...),space_around_delimiters这个参数为True则等号两边有空格
defaults()
#是一个有序字典(有字典中绝大部分操作)
#键是option,值是value
OrderdDict([("option_1","value"),(...,...)])
add_section(section)
#增加节
#不可以添加DEFAULT和已存在的节,会报错
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341