python常用模块-配置文档模块(configparser)
python常用模块-配置文档模块(configparser)
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
ConfigParser模块用于生成和修改常见配置文档,当前模块的名称在 python 3.x 版本中变更为 configparser。类似于apache和mysql的配置文件就用这个模块生成的。
一.创建配置文件
#!/usr/bin/env python
#_*_coding:utf-8_*_
#@author :yinzhengjie
#blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/
#EMAIL:y1053419035@qq.com """
该模块适用于配置文件的格式与windows ini文件类似,可以包含一个或多个节(section),每个节可以有多个参数(键=值)
""" import configparser cfg = configparser.ConfigParser() #创建一个空字典,即“{}” cfg["DEFAULT"] = {
"ServerAliveInterval" :110,
"Compression":"YES",
"CompressionLevel":15,
"ForwardX11":"YES",
} cfg["User information"] = {
"USER":"Yinzhengjie",
} cfg["yinzhengjie.org.cn"] = {
"Port":3389,
"ForwardX11":"no",
} with open("cfg.ini","w")as f:
cfg.write(f)
[DEFAULT]
serveraliveinterval = 110
compression = YES
compressionlevel = 15
forwardx11 = YES [User information]
user = Yinzhengjie [yinzhengjie.org.cn]
port = 3389
forwardx11 = no
cfg.ini配置文件
二.读取配置文件
#!/usr/bin/env python
#_*_coding:utf-8_*_
#@author :yinzhengjie
#blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/
#EMAIL:y1053419035@qq.com import configparser cfg = configparser.ConfigParser() cfg.read("cfg.ini") #读取配置文件 print(cfg.sections()) #打印配置文件的字段信息,它默认是不打印“DEFAULT”的信息。 print("yinzhengjie.org.cn" in cfg) #判断cfg是否存在“yinzhengjie.org.cn”这个字段。 print(cfg["User information"]["user"]) #取"User information"字段的"user"这个key所对应的value。 print(cfg.items("yinzhengjie.org.cn")) #找到"yinzhengjie.org.cn"下所有的键值对。 print(cfg.options("yinzhengjie.org.cn")) #同for循环,找到"yinzhengjie.org.cn"下的所有键。
# for key in cfg["yinzhengjie.org.cn"]:
# print(key) print(cfg.get("yinzhengjie.org.cn","compression")) #get方法取深层嵌套的值。 #以上代码执行结果如下:
['User information', 'yinzhengjie.org.cn']
True
Yinzhengjie
[('serveraliveinterval', ''), ('compression', 'YES'), ('compressionlevel', ''), ('forwardx11', 'no'), ('port', '')]
['port', 'forwardx11', 'serveraliveinterval', 'compression', 'compressionlevel']
YES
三.configparser修改和新增的实例
#!/usr/bin/env python
#_*_coding:utf-8_*_
#@author :yinzhengjie
#blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/
#EMAIL:y1053419035@qq.com import configparser cfg = configparser.ConfigParser() cfg.read("cfg.ini",encoding="utf-8") cfg.set("User information","Name","尹正杰")
cfg.set("User information","user","YINZHENGJIE") cfg.write(open("cfg.ini","w",encoding="utf-8"))
[DEFAULT]
serveraliveinterval = 110
compression = YES
compressionlevel = 15
forwardx11 = YES [User information]
user = YINZHENGJIE
name = 尹正杰 [yinzhengjie.org.cn]
port = 3389
forwardx11 = no
cfg.ini配置文件
四.configparser删除的实例
#!/usr/bin/env python
#_*_coding:utf-8_*_
#@author :yinzhengjie
#blog:http://www.cnblogs.com/yinzhengjie/tag/python%E8%87%AA%E5%8A%A8%E5%8C%96%E8%BF%90%E7%BB%B4%E4%B9%8B%E8%B7%AF/
#EMAIL:y1053419035@qq.com import configparser cfg = configparser.ConfigParser() #生成一个实例 cfg.read("cfg.ini",encoding="utf-8") #将文件内容加载进来。 cfg.remove_section("yinzhengjie.org.cn") #删除整个section! cfg.remove_option("DEFAULT","compression") #删除某个section的一个子项, cfg.write(open("cfg.ini","w",encoding="utf-8")) #如果有中文的话需要指定编码格式(“utf-8”)才能正常打印汉子哟!
[DEFAULT]
serveraliveinterval = 110
compressionlevel = 15
forwardx11 = YES [User information]
user = YINZHENGJIE
name = 尹正杰
cfg.ini配置文件
python常用模块-配置文档模块(configparser)的更多相关文章
- configparser模块——配置文档
configparser模块用于生成和修改常见配置文档. 预制配置文件:conf.ini [DEFAULT] ServerAliveInterval = 45 Compression = yes Co ...
- Python学习 :常用模块(四)----- 配置文档
常用模块(四) 八.configparser 模块 官方介绍:A configuration file consists of sections, lead by a "[section]& ...
- configparser模块——用于生成和修改常见配置文档
配置文档格式 [DEFAULT] ServerAliveInterval = 45 Compression = yes CompressionLevel = 9 ForwardX11 = yes [b ...
- help python(查看模块帮助文档)
查看模块帮助文档: help(len) -- docs for the built in len function (note here you type "len" not &q ...
- 如何利用启明星Portal门户系统的Page模块构建文档库
利用启明星门户系统的Page模块构架可以搭建企业内部的文档管理系统. (一)应用背景 企业内部通常都会使用共享网盘的方式来存放不同部门之间的文档,例如管理员在服务器上对人事部门增加人事部文档文件夹. ...
- python快速生成注释文档的方法
python快速生成注释文档的方法 今天将告诉大家一个简单平时只要注意的小细节,就可以轻松生成注释文档,也可以检查我们写的类方法引用名称是否重复有问题等.一看别人专业的大牛们写的文档多牛多羡慕,不用担 ...
- Nginx配置文档具体解释
Nginx的配置文档具体解释.在这儿做个总结,以便以后使用的时间查看. 下面大部分自己整理.部分来自參考 #设置用户 #user nobody; #启动进程数(一般和server的CPU同样) #能 ...
- 使用 python 创建&更改 word 文档
使用 python 修改 word 文档 说明:这个需求是老师想要一个自动识别 word 文档中指定位置的分数,并填入相应表格. 使用库 python-docx 的官方文档地址是:python-doc ...
- Hibernate配置文档详解
Hibernate配置文档有框架总部署文档hibernate.cfg.xml 和映射类的配置文档 ***.hbm.xml hibernate.cfg.xml(文件位置直接放在src源文件夹即可) (在 ...
随机推荐
- vs编译器好多下划波浪线但不报错
解决办法:项目属性->c/c++->常规->附加包含目录->$(ProjectDir): $(ProjectDir) 项目的目录(定义形式:驱动器 + 路径):包括尾部的反斜杠 ...
- 搭建 Guacamole 并解决各种坑和创建不了虚拟驱动器导致无法实现文件传输的方法
系统类型版本:centos7 64位 结果:最终跑通了项目并且实现了虚拟驱动器的文件传输功能,添加了中文支持 反思总结: 先查看官方文档的Q&A,找找有没有类似的错误,然后如果有错误日志或者现 ...
- [CF587F]Duff is Mad[AC自动机+根号分治+分块]
题意 给你 \(n\) 个串 \(s_{1\cdots n}\) ,每次询问给出 \(l,r,k\) ,问在 \(s_{l\cdots r}\) 中出现了多少次 \(s_k\) . \(n,q,\su ...
- Spring Boot (十四): Spring Boot 整合 Shiro-登录认证和权限管理
这篇文章我们来学习如何使用 Spring Boot 集成 Apache Shiro .安全应该是互联网公司的一道生命线,几乎任何的公司都会涉及到这方面的需求.在 Java 领域一般有 Spring S ...
- GPT & UEFI Install Windows7
安装介质以FAT或者FAT32分区安装介质添加UEFI支持文件(Windows7及其以前的系统,不支持UEFI启动) 从Windows8的安装文件中提取Bootmgfw.efi文件,重命名为BOOTX ...
- A星寻路算法入门(Unity实现)
最近简单学习了一下A星寻路算法,来记录一下.还是个萌新,如果写的不好,请谅解.Unity版本:2018.3.2f1 A星寻路算法是什么 游戏开发中往往有这样的需求,让玩家控制的角色自动寻路到目标地点, ...
- 01_python2.x和python3.x中range()的区别
Py2.x 1) .range 和xrange都是经常使用的,特别是range()返回一个列表 2) .xrange()一般用来创建迭代对象 Py3.x xrange()不存在了,只有range()而 ...
- es6箭头函数使用场景导致的一些问题
1. 今天在使用draggable组件时,监听dragmove事件时获取到的事件对象有一些异常, 代码如下 draggable.on('drag:move', (event) => { cons ...
- Final互评------《飞词》---- 拉格朗日2018
一.基于NABCD评论作品,及改进建议 1.根据(不限于)NABCD评论作品的选题; N(Need,需求):拉格朗日2018团队对需求分析的做法是通过问卷调查的形式,通过问卷调查分析出目前的大学生群体 ...
- 团队作业Week5
每个团队开一个讨论会,协商讨论团队贡献分的分配方式.每个团队的团队贡献分为50分/人.每个人分数不能相同,请详细说明分数的分配规则. 可参考这个博客. 截止时间:2014-10-27