configparse模块

# configparse 模块
    # 一种处理配置文件的一种机制
    # 配置文件的格式要与ini文件格式类似。。。。就是ini,必须要有组。


import configparser
config = configparser.ConfigParser()
config['DEFAULT'] = {'equimenttype' : 1, 'ppp' : 'yes'}  # 键为组名
config['UserInfo'] = {'username': 'why', 'pas':123}

with open('test.ini', mode='w', encoding='utf-8') as f:
    config.write(f) # 生成一个confiparse的文件

# test.ini文件样子
# [DEFAULT]
# ppp = yes
# equimenttype = 1
#
# [UserInfo]
# pas = 123
# username = why



# 查看test.ini文件内容
import configparser
config = configparser.ConfigParser()

config.read('test.ini') # 加载ini文件
print(config.sections())    # ['UserInfo'] 列出组名     DEFAULT组名是关键字,默认不会显示DEFAULT组名
print(config['UserInfo']['username'])   # why
print(config.get('UserInfo', 'username'))   # why

for key in config['UserInfo']:  # 如果设置了DEFAULT节点组,则从其他组找键值时,都会找到DEFAULT的节点下的键值
    print(key)

# 修改test.ini文件内容
import configparser
config = configparser.ConfigParser()
config.read('test.ini') # 加载配置文件
config.add_section('yuan')  #增加组名yuan
config.remove_section('UserInfo')   # 删除一个组
config.remove_option('DEFAULT', 'equimenttype') # 从一个组中删除已个配置项
config.set('UserInfo', 'k1', '1111')    # 在UseInfo组中增加一个配置项为k1值为1111

with open('new2.ini', mode='w', encoding='utf-8') as f:
    config.write(f) # 改完后必须写入到文件中

import os
os.remove('test.ini')
os.rename('new2.ini', 'test.ini')

posted @ 2018-10-03 21:21  _小溢  阅读(254)  评论(0)    收藏  举报