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源文件夹即可) (在 ...
随机推荐
- 3.RapidIO串行物理层的包传输过程
转自https://www.cnblogs.com/liujinggang/p/10005431.html 一.引言 前几篇文章已经谈到RapidIO的协议,串行物理层与控制符号. RapidIO协议 ...
- [LOJ#2878]. 「JOISC 2014 Day2」邮戳拉力赛[括号序列dp]
题意 题目链接 分析 如果走到了下行车站就一定会在前面的某个车站走回上行车站,可以看成是一对括号. 我们要求的就是 类似 代价最小的括号序列匹配问题,定义 f(i,j) 表示到 i 有 j 个左括号没 ...
- Visual Studio Package 插件开发(Visual Studio SDK)
背景 这段时间公司新做了一个支付系统,里面有N个后台服务,每次有更新修改,拷贝打包发布包“不亦乐乎”...于是我想要不要自己定制个打包插件. 部分朋友可能会认为,有现成的可以去找一个,干嘛不用持续集成 ...
- jenkins +gitlab +docker 自动化部署tomcat 项目
实验环境 实验设备 三台服务器 centos 7.X 以上 内存 2-3G左右 192.168.1.195 (jenkins最新+ git 2.8+maven 3.5 +tomcat 8+java1. ...
- kubernetes 网络故障遇见的坑
1.记录一下自己搭建kubernetes 集群遇见的坑. 过程是我学技术以来最大的bug,处处都是坑,稍微写成一点, 就完全起不来, 起不来之后, 还找不到故障点, 郁闷之极. 后续会慢慢分享给大家. ...
- mount命令详解及常见问题汇总
一 .mount命令(用来挂载硬盘或镜像等) 用法:mount [-t vfstype] [-o options] device dir1.-t vfstype 指定文件系统的类型,通常不必指定.mo ...
- 揭秘memset与sizeof的结合使用方法
memset与sizeof为什么经常结合起来用呢? 一.memset介绍 memset函数是C++中的一个函数,它将从给定地址开始,逐个字节刷内存,初始化它们为给定的参数. 基本用法: void * ...
- 小刘的机器学习---SVM
前言: 这是一篇记录小刘学习机器学习过程的随笔. 正文: 支持向量机(SVM)是一组用于分类, 回归和异常值检测的监督学习方法. 在分类问题中,SVM就是要找到一个同时离各个类别尽可能远的决策边界即最 ...
- 第十八次ScrumMeeting博客
第十八次ScrumMeeting博客 本次会议于12月8日(五)22时整在3公寓725房间召开,持续20分钟. 与会人员:刘畅.辛德泰.张安澜.赵奕.方科栋. 1. 每个人的工作(有Issue的内容和 ...
- 关于如何在Tomcat中使用JavaBean
对于没有使用myeclipse,NetBean等IDE工具的用户,如果在编写JSP时,用到了java文件,就必须配置JAVAbean了,网上也有很多在Tomcat中配置JAVABean的例子,这里我简 ...