Python3之configparser模块

1. 简介

  configparser用于配置文件解析,可以解析特定格式的配置文件,多数此类配置文件名格式为XXX.ini,例如mysql的配置文件。在python3.X中
  模块名为configparser ,在python2.X中使用的模块名为ConfigParser。
##### ini 文件示例 ########
 
[section1]      
name = wang
age = 18
  
[section2]
name:python
age = 19
 
#### 文件格式说明 #########
[XXX]  代表节点
XX = XX 或者 XX : XX 代表参数

2. 使用

import configparser       # 导入模块
config = configparser.ConfigParser()   # 创建对象
config.read("user.ini", encoding="utf-8")  # 读取配置文件,如果配置文件不存在则创建
# 查看
secs = config.sections()  # 获取所有的节点名称
print(secs)
# ['section1', 'section2']
options = config.options('section1')  # 获取指定节点的所有key
print(options)
# ['name', 'age']
item_list = config.items('section1')  # 获取指定节点的键值对
print(item_list)
#[('name', 'wang'), ('age', '18')]
val = config.get('section1', 'name')  # 获取指定节点的指定key的value
print(val)
# wang
val = config.getint('section1', 'age')  # 获取节点section1的age属性,属性需要是int型,否则ValueError
print(val)
# 18
val = config.has_section('section1')  # 检查指定节点是否存在,返回True或False
print(val)
# True
val = config.has_option('section1', 'age')  # 检查指定节点中是否存在某个key,返回True或False
print(val)
#True
 
# 增删改
config.add_section("node")  # 添加一个节点,节点名为node, 此时添加的节点node尚未写入文件
config.write(open('user.ini', "w"))  # 将添加的节点node写入配置文件
 
config.remove_section("node")  # 删除一个节点,节点名为node, 删掉了内存中的节点node
config.write(open("user.ini", "w"))  # 将删除节点node后的文件内容回写到配置文件
 
config.set("section1", "k1", "v1")  # 在已存在的节点中添加一个键值对k1 = v1 ,如果该节点不存在则报错,如果key已经存在,则修改value
# configparser.NoSectionError: No section: 'section'
config.write(open("user.ini", "w"))
  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值