Python使用ConfigParser模块操作配置文件的方法


Posted in Python onJune 29, 2018

本文实例讲述了Python使用ConfigParser模块操作配置文件的方法。分享给大家供大家参考,具体如下:

一、简介

用于生成和修改常见配置文档,当前模块的名称在 python 3.x 版本中变更为 configparser

二、配置文件格式

[DEFAULT]
ServerAliveInterval = 45
Compression = yes
CompressionLevel = 9
ForwardX11 = yes
[bitbucket.org]
User = hg
[topsecret.server.com]
Port = 50022
ForwardX11 = no

三、创建配置文件

import configparser
# 生成一个处理对象
config = configparser.ConfigParser()
#默认配置
config["DEFAULT"] = {'ServerAliveInterval': '45',
           'Compression': 'yes',
           'CompressionLevel': '9'}
#生成其他的配置组
config['bitbucket.org'] = {}
config['bitbucket.org']['User'] = 'hg'
config['topsecret.server.com'] = {}
topsecret = config['topsecret.server.com']
topsecret['Host Port'] = '50022' # mutates the parser
topsecret['ForwardX11'] = 'no' # same here
config['DEFAULT']['ForwardX11'] = 'yes'
#写入配置文件
with open('example.ini', 'w') as configfile:
  config.write(configfile)

四、读取配置文件

1、读取节点信息

import configparser
config = configparser.ConfigParser()
config.read('example.ini')
# 读取默认配置节点信息
print(config.defaults())
#读取其他节点
print(config.sections())

输出

OrderedDict([('compression', 'yes'), ('serveraliveinterval', '45'), ('compressionlevel', '9'), ('forwardx11', 'yes')])
['bitbucket.org', 'topsecret.server.com']

2、判读配置节点名是否存在

print('ssss' in config)
print('bitbucket.org' in config)

输出

False
True

3、读取配置节点内的信息

print(config['bitbucket.org']['user'])

输出

hg

4.循环读取配置节点全部信息

for key in config['bitbucket.org']:
  print(key, ':', config['bitbucket.org'][key])

输出

user : hg
compression : yes
serveraliveinterval : 45
compressionlevel : 9
forwardx11 : yes

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python中 ? : 三元表达式的使用介绍
Oct 09 Python
python3简单实现微信爬虫
Apr 09 Python
python利用datetime模块计算时间差
Aug 04 Python
详解python string类型 bytes类型 bytearray类型
Dec 16 Python
Python使用matplotlib填充图形指定区域代码示例
Jan 16 Python
python装饰器深入学习
Apr 06 Python
python爬虫_实现校园网自动重连脚本的教程
Apr 22 Python
Python数据可视化库seaborn的使用总结
Jan 15 Python
python3获取文件中url内容并下载代码实例
Dec 27 Python
Python内置数据类型list各方法的性能测试过程解析
Jan 07 Python
PyCharm2019 安装和配置教程详解附激活码
Jul 31 Python
如何解决flask修改静态资源后缓存文件不能及时更改问题
Aug 02 Python
python计算列表内各元素的个数实例
Jun 29 #Python
python判断设备是否联网的方法
Jun 29 #Python
python3 对list中每个元素进行处理的方法
Jun 29 #Python
python对list中的每个元素进行某种操作的方法
Jun 29 #Python
Python中交换两个元素的实现方法
Jun 29 #Python
python3中zip()函数使用详解
Jun 29 #Python
对python list 遍历删除的正确方法详解
Jun 29 #Python
You might like
深入解析php模板技术原理【一】
2008/01/10 PHP
php中获取指定IP的物理地址的代码(正则表达式)
2011/06/23 PHP
PHP实现设计模式中的抽象工厂模式详解
2014/10/11 PHP
MAC下通过改apache配置文件切换php多版本的方法
2017/04/26 PHP
PHP如何获取当前主机、域名、网址、路径、端口等参数
2017/06/09 PHP
jQuery下实现等待指定元素加载完毕(可改成纯js版)
2013/07/11 Javascript
通过Jquery的Ajax方法读取将table转换为Json
2014/05/31 Javascript
javascript设计模式之对象工厂函数与构造函数详解
2015/07/30 Javascript
jQuery实现TAB选项卡切换特效简单演示
2016/03/04 Javascript
Bootstrap Table使用方法解析
2016/10/19 Javascript
BootStrapValidator初使用教程详解
2017/02/10 Javascript
js实现3d悬浮效果
2017/02/16 Javascript
JS ES6中setTimeout函数的执行上下文示例
2017/04/27 Javascript
详解angularJs中关于ng-class的三种使用方式说明
2017/06/02 Javascript
详解原生js实现offset方法
2017/06/15 Javascript
JavaScript实现换肤功能
2017/09/15 Javascript
详解Vue中组件的缓存
2019/04/20 Javascript
使用 node.js 模仿 Apache 小部分功能
2019/07/07 Javascript
使用layui的router来进行传参的实现方法
2019/09/06 Javascript
js判断在哪个浏览器打开项目的方法
2020/01/21 Javascript
[43:51]2014 DOTA2国际邀请赛中国区预选赛 Dream Times VS TongFu
2014/05/22 DOTA
[02:11]DOTA2上海特级锦标赛主赛事第二日RECAP
2016/03/04 DOTA
python3判断url链接是否为404的方法
2018/08/10 Python
Python任意字符串转16, 32, 64进制的方法
2019/06/12 Python
Python函数中参数是传递值还是引用详解
2019/07/02 Python
python 矢量数据转栅格数据代码实例
2019/09/30 Python
Python用input输入列表的实例代码
2020/02/07 Python
Python datetime 格式化 明天,昨天实例
2020/03/02 Python
django使用F方法更新一个对象多个对象字段的实现
2020/03/28 Python
python中for in的用法详解
2020/04/17 Python
伦敦最著名的老字号百货公司:Selfridges(塞尔福里奇百货)
2016/07/25 全球购物
自我鉴定书面格式
2014/01/13 职场文书
小学二年级数学教学计划
2015/01/20 职场文书
医生辞职信范文
2015/03/02 职场文书
2015年幼儿园班主任工作总结
2015/05/12 职场文书
迎新年主持词
2015/07/06 职场文书