简介: configparser模块是一个python用来方便处理配置文件,下面开始介绍。
# 导入模块
import configparser
# 实例化一个对象
cfg = configparser.ConfigParser()
# 将数据写到文件
# 如果添加了[DEFAULT],会为每个section的options中默认添加其内容
# cfg['DEFAULT'] = {'description': 'This is userinfo'}
cfg['Tom'] = {'name': 'Tom', 'password': 'tom123'}
cfg['Lily'] = {'name': 'Lily', 'password': 'lily123'}
cfg['Bob'] = {'name': 'Bob', 'password': 'bob123'}
with open('userinfo.ini', 'w', encoding='utf-8') as user:
cfg.write(user) # 注意这里的write是cfg的
# 字典中的键叫做option;[Tom],[Lily],[Bob]叫做section
# 获取文件中的内容
# 读取文件
cfg.read('userinfo.ini')
# 查看有多少个sections,不包括[DEFAULT]
s = cfg.sections()
['Tom', 'Lily', 'Bob']
# 查看某个section有哪些options
o = cfg.options('Tom')
# 有[DEFAULT],并且添加了数据
['name', 'password', 'description']
# 有[DEFAULT],但没有数据;或者没有[DEFAULT]
['name', 'password']
# 添加section及其options(不用write都不会写到文件中)
# 这种添加只适合临时添加,不会写到文件中
cfg.add_section('John')
cfg.set('John', 'name', 'John')
cfg.set('John', 'password', 'john123')
# 这种方法也可以
cfg['John'] = {'name': 'John', 'password': 'john123'}
# 为已经存在的某个section添加option
cfg.set('Tom', 'gender', '男')
前:['name', 'password']
后:['name', 'password', 'gender']
# 判断是存在某个section
cfg.has_section('Tom')
# 判断是存在某个option
cfg.has_option('Tom', 'name')
# 获取其数据
cfg.get('Tom', 'password')
输出:tom123