Python内置模块ConfigParser实现配置读写功能的方法

yipeiwu_com6年前Python基础

本文实例讲述了Python内置模块ConfigParser实现配置读写功能的方法。分享给大家供大家参考,具体如下:

用于对特定的配置进行操作,当前模块的名称在 python 3.x 版本中变更为 configparser。

#配置文件test.cfg
[section1]
k1 = v1
k2 :v2
k3 = 1
[section2]
k1 = v1

#coding:utf-8
import ConfigParser
config = ConfigParser.ConfigParser()
config.read('test.cfg')
# ########## 读 ##########
#获取所有sections.
secs = config.sections()
print secs #['section1', 'section2']
#获取制定section的键key
options = config.options('section1')
print options  #['k1', 'k2', 'k3']
#获取指定section的键值对key-value
item_list = config.items('section1')
print item_list #[('k1', 'v1'), ('k2', 'v2'), ('k3', '1')]
#获取指定key的value
# 获取字符串类型的value
val1 = config.get('section1','k1')
# 获取整型的value
val2 = config.getint('section1','k3')
# ########## 增改删 ##########
# 增加section
if not config.has_section('section3'):
  config.add_section('section3')
  config.write(open('test.cfg', "w"))
#设置option
if not config.has_section('section3'):
  config.set('section3','k1',11111)
  config.write(open('test.cfg', "w"))
# 移除option
ret = config.remove_option('section3','k1')
print ret  #True or False
config.write(open('test.cfg', "w"))
# 移除section
ret = config.remove_section('section3')
print ret  #True or False
config.write(open('test.cfg', "w"))

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

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

相关文章

Python 实现链表实例代码

Python 实现链表实例代码 前言 算法和数据结构是一个亘古不变的话题,作为一个程序员,掌握常用的数据结构实现是非常非常的有必要的。 实现清单 实现链表,本质上和语言是无关的。但是灵活...

Python如何筛选序列中的元素的方法实现

本篇文章给大家带来的内容是关于Python如何筛选序列中的元素 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 1、需求 序列中含有一些数据,我们需要提取其中的值或...

python matplotlib 画dataframe的时间序列图实例

在python中经常会用到pandas来处理数据,最常用的数据类型是dataframe,但是有时候在dataframe有时间字段需要画时间序列图的时候会遇到一些问题,下面是我处理这个问题...

Python 占位符的使用方法详解

Python 占位符的使用方法详解

现在,我带你们通过一个小案例,来进行了解占位符的使用。 案例需求:打印一张属于自己的专属名片。 第一:了解我们的需求 打印一张专属于自己的私人名片,名片上肯定会包含一些个人信息:例:公司...

Python的argparse库使用详解

argparse是python标准库里面用来处理命令行参数的库 命令行参数分为位置参数和选项参数: 位置参数就是程序根据该参数出现的位置来确定的 如:[root@openstack...