Python configparser模块应用过程解析

 更新时间:2020年08月14日 15:43:29   作者:蓝 寅  
这篇文章主要介绍了Python configparser模块应用过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

一、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的Flask框架及Nginx实现静态文件访问限制功能

    Python的Flask框架及Nginx实现静态文件访问限制功能

    这篇文章主要介绍了Python的Flask框架及Nginx实现静态文件访问限制功能,Nginx方面利用到了自带的XSendfile,需要的朋友可以参考下
    2016-06-06
  • 基于Python制作一副扑克牌过程详解

    基于Python制作一副扑克牌过程详解

    这篇文章主要介绍了基于Python制作一副扑克牌过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • 教你快速上手Selenium爬虫,万物皆可爬

    教你快速上手Selenium爬虫,万物皆可爬

    这篇文章主要介绍了教你如何快速上手Selenium,文中附含详细示例代码,包含基本使用以及操作步骤,有需要的朋友可以参考下,希望大家多多讨论交流
    2021-08-08
  • anaconda navigator打不开问题的解决方法

    anaconda navigator打不开问题的解决方法

    在使用python的发行版anaconda时,常常需要根据自己的项目安装新的库,下面这篇文章主要给大家介绍了关于anaconda navigator打不开问题的解决方法,需要的朋友可以参考下
    2022-12-12
  • 几款Python编译器比较与推荐(小结)

    几款Python编译器比较与推荐(小结)

    这篇文章主要介绍了几款Python编译器比较与推荐(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • Tensorflow中tf.ConfigProto()的用法详解

    Tensorflow中tf.ConfigProto()的用法详解

    今天小编就为大家分享一篇Tensorflow中tf.ConfigProto()的用法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • Python使用sqlite3模块内置数据库

    Python使用sqlite3模块内置数据库

    这篇文章主要介绍了Python使用sqlite3模块内置数据库,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • python绘制柱形图的方法

    python绘制柱形图的方法

    这篇文章主要为大家详细介绍了python绘制柱形图的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • 对Python中创建进程的两种方式以及进程池详解

    对Python中创建进程的两种方式以及进程池详解

    今天小编就为大家分享一篇对Python中创建进程的两种方式以及进程池详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • 基于python plotly交互式图表大全

    基于python plotly交互式图表大全

    今天小编就为大家分享一篇基于python plotly交互式图表大全,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12

最新评论