1.安装模块包

pip instal configparser

2.配置文件database.conf

#配置数据库
[DEFAULT]
dbhost=localhost
dbname=root
dbpasswd=123456

[database]
dbhost=127.0.0.1
dbport=3366
dbname=test
dbuser=test
dbpassword=test
dbcharset=utf8

3.configparser代码

#!/usr/bin/env python
# _*_ coding:utf-8 _*_

import configparser
import os

config=configparser.ConfigParser()
path_conf=os.path.split(os.path.realpath(__file__))[0]+'/database.conf'
config.read(path_conf,encoding='utf8')
# sections 段信息;
print(config.sections()) #['database']
#获取sectons的keys&values
print(config.items('database')) #[('dbhost', '127.0.0.1'), ('dbport', '3366'), ('dbname', 'test'), ('dbuser', 'test'), ('dbpassword', 'test'), ('dbcharset', 'utf8')]
#获取指定section的ksys
print(config.options('database')) #['dbhost', 'dbport', 'dbname', 'dbuser', 'dbpassword', 'dbcharset']
# for option in config.options('database'):
#     print(option)

#获取key的value
print(config['database']['dbhost']) #127.0.0.1
print(config.get('database','dbhost')) #127.0.0.1
print(config.getint('database','dbport')) #数据类型是整数 3306

##检查是否存在;
print('database' in config) #True
print('databases' in config) #False
##检查value值是否存在;
print('3366' in config.get('database','dbport'))
print('test' in config.get('database','dbname'))

#添加
config.add_section('sections_2')
config.set('sections_1','ksey_12','value_12')

#删除
#删除key12值
config.remove_option('sections_1','ksey_12')
#删除sections值
config.remove_section('sections_2')
#删除default以外;
config.clear()
config.write(open(path_conf,'w'))

#关于DEFAULT补充
##删除keys;
config.remove_option('DEFAULT', 'dbname')
##添加
config.set('DEFAULT','dbname','test1')
config.write(open(path_conf,'w'))
#检查
print('test1' in config.get('DEFAULT','dbname'))

4.写读取配置对象

写一个demo程序DemoConfigparser.py

#!/usr/bin/env python
# _*_ coding:utf-8 _*_

import configparser
import os

#获取config配置文件
def getConfig(section, key):
    config = configparser.ConfigParser()
    path = os.path.split(os.path.realpath(__file__))[0] + '/db.conf'
    config.read(path)
    return config.get(section, key)

5.引用配置文件

引用文件编写DispatchParser.py

#!/usr/bin/env python
# _*_ coding:utf-8 _*_
from DemoConfigparser import *

print(getConfig("database", "dbname"))
print(getConfig("database", "dbhost"))

MothurView
7 声望1 粉丝