Python configparser模块应用过程解析


Posted in Python onAugust 14, 2020

一、configparser模块是什么

可以用来操作后缀为 .ini 的配置文件;

python标准库(就是python自带的意思,无需安装)

二、configparser模块基本使用

2.1 读取 ini 配置文件

#存在 config.ini 配置文件,内容如下:
[DEFAULT]
excel_path = ../test_cases/case_data.xlsx
log_path = ../logs/test.log
log_level = 1

[email]
user_name = 32@qq.com
password = 123456

使用configparser模块读取配置文件

import configparser

#创建配置文件对象
conf = configparser.ConfigParser()
#读取配置文件
conf.read('config.ini', encoding="utf-8")
#列表方式返回配置文件所有的section
print( conf.sections() )  #结果:['default', 'email']
#列表方式返回配置文件email 这个section下的所有键名称
print( conf.options('email') )  #结果:['user_name', 'password']
#以[(),()]格式返回 email 这个section下的所有键值对
print( conf.items('email') )  #结果:[('user_name', '32@qq.com'), ('password', '123456')]
#使用get方法获取配置文件具体的值,get方法:参数1-->section(节) 参数2-->key(键名)
value = conf.get('default', 'excel_path')
print(value)

2.2 写入 ini 配置文件(字典形式)

import configparser

#创建配置文件对象
conf = configparser.ConfigParser()
#'DEFAULT'为section的名称,值中的字典为section下的键值对
conf["DEFAULT"] = {'excel_path' : '../test_cases/case_data.xlsx' , 'log_path' : '../logs/test.log'}
conf["email"] = {'user_name':'32@qq.com','password':'123456'}
#把设置的conf对象内容写入config.ini文件
with open('config.ini', 'w') as configfile:
  conf.write(configfile)

2.3 写入 ini 配置文件(方法形式)

import configparser

#创建配置文件对象
conf = configparser.ConfigParser()
#读取配置文件
conf.read('config.ini', encoding="utf-8")
#在conf对象中新增section
conf.add_section('webserver')
#在section对象中新增键值对
conf.set('webserver','ip','127.0.0.1')
conf.set('webserver','port','80')
#修改'DEFAULT'中键为'log_path'的值,如没有该键,则新建
conf.set('DEFAULT','log_path','test.log')
#删除指定section
conf.remove_section('email')
#删除指定键值对
conf.remove_option('DEFAULT','excel_path')
#写入config.ini文件
with open('config.ini', 'w') as f:
  conf.write(f)

上述3个例子基本阐述了configparser模块的核心功能项;

  • 例1中,encoding="utf-8"为了放置读取的适合中文乱码;
  • 例2你可以理解为在字典中新增数据,键:配置文件的section,字符串格式;值:section的键值对,字典格式;
  • 例3中在使用add_section方法时,如果配置文件存在section,则会报错;而set方法在使用时,有则修改,无则新建。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 基础学习第二弹 类属性和实例属性
Aug 27 Python
Python中实现远程调用(RPC、RMI)简单例子
Apr 28 Python
Python中统计函数运行耗时的方法
May 05 Python
详解字典树Trie结构及其Python代码实现
Jun 03 Python
Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
Aug 07 Python
解决pandas无法在pycharm中使用plot()方法显示图像的问题
May 24 Python
python 字典修改键(key)的几种方法
Aug 10 Python
Django代码性能优化与Pycharm Profile使用详解
Aug 26 Python
Python pip替换为阿里源的方法步骤
Jul 02 Python
Python 类方法和实例方法(@classmethod),静态方法(@staticmethod)原理与用法分析
Sep 20 Python
Pytorch之contiguous的用法
Dec 31 Python
python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码
Jun 11 Python
PyCharm 2020.2 安装详细教程
Sep 25 #Python
Python logging模块handlers用法详解
Aug 14 #Python
Python代码注释规范代码实例解析
Aug 14 #Python
Python发送邮件实现基础解析
Aug 14 #Python
Python压缩模块zipfile实现原理及用法解析
Aug 14 #Python
Python编写memcached启动脚本代码实例
Aug 14 #Python
Python自动巡检H3C交换机实现过程解析
Aug 14 #Python
You might like
PHP生成便于打印的网页
2006/10/09 PHP
PHP闭包函数传参及使用外部变量的方法
2016/03/15 PHP
用php和jQuery来实现“顶”和“踩”的投票功能
2016/10/13 PHP
PHP单文件上传原理及上传函数的封装操作示例
2019/09/02 PHP
一个不错的用JavaScript实现的UBB编码函数
2007/03/09 Javascript
Javascript创建Silverlight Plugin以及自定义nonSilverlight和lowSilverlight样式
2010/06/28 Javascript
JavaScript获取onclick、onchange等事件值的代码
2013/07/22 Javascript
一个支付页面DEMO附截图
2014/07/22 Javascript
jQuery获取上传文件的名称的正则表达式
2015/05/21 Javascript
JavaScript人脸识别技术及脸部识别JavaScript类库Tracking.js
2015/09/14 Javascript
jquery实现的伪分页效果代码
2015/10/29 Javascript
jQuery实现弹窗居中效果类似alert()
2017/02/27 Javascript
详谈jQuery unbind 删除绑定事件 / 移除标签方法
2017/03/02 Javascript
Vue获取DOM元素样式和样式更改示例
2017/03/07 Javascript
Angular.js中数组操作的方法教程
2017/07/31 Javascript
Node做中转服务器转发接口
2017/10/18 Javascript
koa大型web项目中使用路由装饰器的方法示例
2019/04/02 Javascript
使用Karma做vue组件单元测试的实现
2020/01/16 Javascript
Javascript原型链及instanceof原理详解
2020/05/25 Javascript
0基础学习前端开发的一些建议
2020/07/14 Javascript
keep-alive保持组件状态的方法
2020/12/02 Javascript
python中的break、continue、exit()、pass全面解析
2017/08/05 Python
python 实现图片旋转 上下左右 180度旋转的示例
2019/01/24 Python
什么是python的列表推导式
2020/05/26 Python
Marc Jacobs彩妆官网:Marc Jacobs Beauty
2017/07/03 全球购物
实体的生命周期
2013/08/31 面试题
师德师风承诺书
2014/05/23 职场文书
幼儿园大班区域活动总结
2014/07/09 职场文书
党员“四风”方面存在问题及整改措施
2014/09/24 职场文书
八项规定个人对照检查材料思想汇报
2014/09/25 职场文书
校园文化艺术节宣传标语
2014/10/09 职场文书
综合测评自我评价
2015/03/06 职场文书
格林童话读书笔记
2015/06/30 职场文书
感恩信:写给爸爸妈妈的一封感谢信
2019/09/12 职场文书
spring boot中nativeQuery的用法
2021/07/26 Java/Android
RPM包方式安装Oracle21c的方法详解
2021/08/23 Oracle