20180305-configuparser模块

简介

configparser在Python2.x中定义为ConfigParser,该模块的作用就是使用配置文件,配置文件的格式和windows中ini文件格式相同。

该模块的作用就是RawConfigParser()、ConfigParser()、SafeConfigParser()这三个方法,创建一个configparser对象对指定的配置文件进行增删改查操作。

配置文件由不同的片段组成和Linux中的repo文件格式类似:

格式:

# 注释
; 注释
[section1] # 节点
k1 = v1 #
k2 = v2 #
或者
k3 :  v3 #

[DEFAULT] #设置配置的默认值,初始化

1.获取所有节点

import configparser

# 1.获取所有节点
config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')
ret = config.sections()
print('获取所有节点:',ret)

2.获取节点下所有的键值对

config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')
ret = config.items('ServerConfig')
print('获取节点下的所有键值对:',ret)

3.获取指定节点下所有的键

config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')
ret = config.options('ServerConfig')
print('获取指定节点下的所有的键:',ret)

4.获取指定节点下指定的key对应的值

config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')
ret = config.get('ServerConfig','server_ip')
ret2 = config.getint('ServerConfig','server_aliveinterval')
print('获取指定节点下的指定key的值:',ret)
print('获取指定节点下的指定key的值:',ret2,type(ret2))

5.检查、删除、添加节点

config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')

# 检查
has_sec = config.has_section('ServerConfig')
print('检查节点会否存在',has_sec)

# 添加节点 如果节点存在,则会报错
# config.add_section('UtilConfig')
# config.write(open('ini','w'))

# 删除节点
config.remove_section('UtilConfig')
config.write(open('ini','w'))

6.检查、删除、添加指定节点下的键值对

config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')

# 检查
has_item = config.has_option('ServerConfig','server_ip')
print('检查节点下的键值对是否存在',has_item)

# 添加加点在的键值对 如果节点不存在则报错
config.set('ServerConfig','server_ip','172.16.2.115')
config.write(open('ini','w'))

# 删除节点下指定的key
config.remove_option('ServerConfig','server_ip')
config.write(open('ini','w'))

 注意:在对配置文件进行添加、删除等操作时,要通过config.wirte(fp)操作将内存中的数据写入配置文件中,否则对文件的修改不会被保存到文件中

posted @ 2018-03-05 13:57  土耳其大骗子  阅读(107)  评论(0)    收藏  举报