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)的更多相关文章

  1. configparser模块——配置文档

    configparser模块用于生成和修改常见配置文档. 预制配置文件:conf.ini [DEFAULT] ServerAliveInterval = 45 Compression = yes Co ...

  2. Python学习 :常用模块(四)----- 配置文档

    常用模块(四) 八.configparser 模块 官方介绍:A configuration file consists of sections, lead by a "[section]& ...

  3. configparser模块——用于生成和修改常见配置文档

    配置文档格式 [DEFAULT] ServerAliveInterval = 45 Compression = yes CompressionLevel = 9 ForwardX11 = yes [b ...

  4. help python(查看模块帮助文档)

    查看模块帮助文档: help(len) -- docs for the built in len function (note here you type "len" not &q ...

  5. 如何利用启明星Portal门户系统的Page模块构建文档库

    利用启明星门户系统的Page模块构架可以搭建企业内部的文档管理系统. (一)应用背景 企业内部通常都会使用共享网盘的方式来存放不同部门之间的文档,例如管理员在服务器上对人事部门增加人事部文档文件夹. ...

  6. python快速生成注释文档的方法

    python快速生成注释文档的方法 今天将告诉大家一个简单平时只要注意的小细节,就可以轻松生成注释文档,也可以检查我们写的类方法引用名称是否重复有问题等.一看别人专业的大牛们写的文档多牛多羡慕,不用担 ...

  7. Nginx配置文档具体解释

    Nginx的配置文档具体解释.在这儿做个总结,以便以后使用的时间查看. 下面大部分自己整理.部分来自參考 #设置用户 #user  nobody; #启动进程数(一般和server的CPU同样) #能 ...

  8. 使用 python 创建&更改 word 文档

    使用 python 修改 word 文档 说明:这个需求是老师想要一个自动识别 word 文档中指定位置的分数,并填入相应表格. 使用库 python-docx 的官方文档地址是:python-doc ...

  9. Hibernate配置文档详解

    Hibernate配置文档有框架总部署文档hibernate.cfg.xml 和映射类的配置文档 ***.hbm.xml hibernate.cfg.xml(文件位置直接放在src源文件夹即可) (在 ...

随机推荐

  1. Partition4:增加分区

    在关系型 DB中,分区表经常使用DateKey(int 数据类型)作为Partition Column,每个月的数据填充到同一个Partition中,由于在Fore-End呈现的报表大多数是基于Mon ...

  2. Java英文单词Java基础常见英语词汇

    Java英文单词Java基础常见英语词汇(共70个)                                                                          ...

  3. [转载] 相机越贵画质越好?聊聊CMOS设计

    似乎在很多人心目中,个位数机身就代表了品牌最强成像素质,这或许有“人不识货钱识货”的道理在作祟,但事实上如佳能1DX2或尼康D5,又或是索尼A9这种旗舰机真的就一定能代表本家的画质巅峰么?这一切都得从 ...

  4. Ing_制作在线QQ

    制作在线QQ的具体步骤 1.首先登录到http://is.qq.com/webpresence/code.shtml 网站2.选择风格3.填写相关数据4.生成网页代码5.复制代码到“写字板”,另存文件 ...

  5. python3 subprocess模块

    当我们在执行python程序的时候想要执行系统shell可以使用subprocess,这时可以新起一个进程来执行系统的shell命令,python3常用的有subprocess.run()和subpr ...

  6. VMware下三种网络连接模式介绍

    birdged(桥接) 桥接网络是指本地物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位,那么物理网卡和虚拟网卡就相当于处于同一个网段,虚拟交换机就相当于 ...

  7. Linux DDos防御

    今天要说的就是一款能够自动屏蔽DDOS攻击者IP的软件:DDoS deflate. DDoS deflate介绍 DDoS deflate是一款免费的用来防御和减轻DDoS攻击的脚本.它通过netst ...

  8. PAT甲题题解-1053. Path of Equal Weight (30)-dfs

    由于最后输出的路径排序是降序输出,相当于dfs的时候应该先遍历w最大的子节点. 链式前向星的遍历是从最后add的子节点开始,最后添加的应该是w最大的子节点, 因此建树的时候先对child按w从小到大排 ...

  9. Python中的字典详解

    https://www.cnblogs.com/yjd_hycf_space/p/6880026.html

  10. Linux命令学习chroot和chmode

    chroot:chang root http://man.linuxde.net/chroot https://baike.baidu.com/item/chroot 1.限制被CHROOT的使用者所 ...