读写配置文件模块configparser—参考杨永明博客

一、configparser模块介绍

1、定义:

ConfigParser是用来读取配置文件的包,可对配置文件进行读写操作;如系统中缺乏该模块,可安装包configparser;

2、配置文件的标准格式:

[db]
db_host = 127.0.0.1
db_port = 69
db_user = root
db_pass = root
host_port = 69

[concurrent]
thread = 10
processor = 20

#一个配置文件可包含多个section;一个section可对应多个option;
配置文件示例

3、configparser模块的使用流程

import configparser  #引入configparser模块
config = configparser.ConfigParser() #实例化对象
config.read('ini',encoding='utf-8') #开始读取配置文件

#判断是否存在section:config.has_section(section)
#判断是否存在option:config.has_option(section,option)
#添加section:config.add_section(section)
#添加/修改option:config.set(section,option,value)
#获取所有的section:config.sections()
#获取指定section下的所有option:config.options(section)
#获取指定section下的指定option:config.get(section,option)
#获取指定section的所有配置信息:config.items(section)

config.write(open('ini','w'))
模块使用流程

二、模块具体用法

1、创建配置文件

import configparser
config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')
if not config.has_section('db'):
    config.add_section('db')
else:
    if not config.has_option('db','db_host'):
    config.set('db','db_host','127.0.0.1')
config.set('db','db_user','root')
config.set('db','db_pwd','root')
config.set('db','db_port','3306')
config.write(open('ini','w'))
创建配置文件
[db]
db_host = 127.0.0.1
db_user = root
db_pwd = root
db_port = 3306
执行结果

2、获取配置文件中的所有section

import configparser
config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')
result = config.sections()
print(result)
config.write(open('ini','w'))

#结果以列表形式返回
#['db', 'mysql']
获取所有sections

3、获取指定section下的所有options

import configparser
config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')
result = config.options('db')
print(result)
config.write(open('ini','w'))

#结果以列表形式返回
#['db_host', 'db_user', 'db_pwd', 'db_port']
获取指定section下的所有options

4、获取指定section下的所有配置信息

import configparser
config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')
result = config.items('db')
print(result)
config.write(open('ini','w'))

#结果以列表内包含元组的形式返回
#[('db_host', '127.0.0.1'), ('db_user', 'root'), ('db_pwd', 'root'), ##('db_port', '3306')]
获取指定section下的所有配置信息

5、获取指定section下指定option(以不同格式)

[db]
db_host = 127.0.0.1
db_user = root
db_pwd = root
db_port = 3306
enable = 0
配置文件
import configparser
config = configparser.ConfigParser()
config.read('ini',encoding='utf-8')
#获取字符串形式的值
result = config.get('db','db_port')
print(result,type(result))
#获取int格式的值
result = config.getint('db','db_port')
print(result,type(result))
#获取floot格式的值
result = config.getfloat('db','db_port')
print(result,type(result))
#获取bool格式的值
result = config.getboolean('db','enable')
print(result,type(result))
config.write(open('ini','w'))
value的不同输出类型
3306 <class 'str'>
3306 <class 'int'>
3306.0 <class 'float'>
False <class 'bool'>
执行结果

 

转载于:https://www.cnblogs.com/yangmeng1990/p/10424550.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值