configparser模块

1、configparser模块适用于配置文件的格式与Windows ini文件类似,可以包含一个或多个节(section),每个节可以有多个参数(键=值)。

  某xxx服务器的配置文件:

[DEFAULT]
ServerAliveInterver = 45
Compression = yes
CompressionLevel = 9
ForwardX11 = yes

[bitbucket.org]
User = hg

[topsecret.server.com]
Port = 50022
ForwardX11 = no

2、configparser可以对以上的文件进行初始化的处理。

  初始化写入文件:

import configparser
config = configparser.ConfigParser()
config['DEFAULT'] = {
    'sleep':1000,
    'session-time-out':30,
    'user-alive':99999
}

config['TEST-DB'] = {
    'db_ip':'192.168.15.56',
    'port':'3306',
    'u_name':'root',
    'u_pwd':'123456'
}

config['168-DB']={
'db_ip':'192.168.15.68',
    'port':'3306',
    'u_name':'root',
    'u_pwd':'123456'
}

config['173-DB']={
'db_ip':'192.168.15.46',
    'port':'3306',
    'u_name':'root',
    'u_pwd':'123456'
}

f = open('db.ini',mode='w')
config.write(f)     #写入文件
f.flush()
f.close()

  读取文件信息:

import configparser
config = configparser.ConfigParser()
config.read('db.ini')   #读取文件
print(config.sections())  #获取到section.章节...DEFAULT是给每个章节都配备的信息
print(config.get('DEFAULT','SESSION-TIME-OUT'))  #从xxx章节中读取到xxx信息
#也可以像操作字典一样
print(config['EST-DB']['DB_IP'])
print(config['173-DB']['db_ip'])

for k in config['168-DB']:T
    print(k)
for k,v in config['168-DB'].items():
    print(k,v)

print(config.options('168-DB'))   #同for循环,找到‘168-DB’下的所有键
print(config.items('168-DB'))   #找到‘168-DB’下所有的键值对
print(config.get('168-DB','db_ip'))  #get方法Section下的key对应的value


结果:
['TEST-DB', '168-DB', '173-DB']
30
192.168.15.56
192.168.15.46
db_ip
port
u_name
u_pwd
sleep
session-time-out
user-alive
db_ip 192.168.15.68
port 3306
u_name root
u_pwd 123456
sleep 1000
session-time-out 30
user-alive 99999
['db_ip', 'port', 'u_name', 'u_pwd', 'sleep', 'session-time-out', 'user-alive']
[('sleep', '1000'), ('session-time-out', '30'), ('user-alive', '99999'), ('db_ip', '192.168.15.68'), ('port', '3306'), ('u_name', 'root'), ('u_pwd', '123456')]
192.168.15.68

3、增删改操作:

  

import configparser
config = configparser.ConfigParser()
config.read('db.ini')  #读取文件

#添加一个章节
config.add_section('189-DB')
config['189-DB'] = {
    'db_ip':'192.168.15.189',
    'port':'3306',
    'u_name':'root',
    'u_pwd':'123456'
}

#修改信息
config.set('168-DB','db_ip','10.10.10.168')

#删除章节
config.remove_section('173-DB')

#删除元素信息
config.remove_option('168-DB','u_name')

#回写文件
config.write(open('db.ini',mode='w'))

 

posted @ 2018-10-09 15:59  LW-5208  阅读(95)  评论(0)    收藏  举报