python篇-常用库9-configparser文件解析器(图文详解及代码)

本文详细介绍了Python的configparser模块,包括其基本用法、读取section、获取和设置键值、生成配置文件以及修改配置文件的操作。
摘要由CSDN通过智能技术生成

1、configparser 简介

configparser 是 Pyhton 标准库中用来读写配置文件的模块,并且内置方法和字典非常相似。

配置文件的格式如下:

[userinfo]
user = zhangsan
passwd = 123456


[otherInfo]
address = beijing/n\n
age = 2

“[ ]” 包含的为 section,section 下面为类似于 key-value 的配置内容;
configparser 默认使用 ‘=’ ‘:’ 分隔;

使用:也是合法了,如下

[mysq]
host:127.0.0.1
port:3306
user:root
password:123456

2、读取section

实例:文件名:config.ini,内容如下

[userinfo]
user = zhang/n\nsan
passwd = 123456


[otherInfo]
address = beijing
age = 2

读取section,如下

#coding=utf-8
import configparser

config = configparser.ConfigParser()  #初始化configparser类
print(type(config)) #输出configparser类型

config.read('config.ini', 'UTF-8')  #指定读取的文件,及编码格式
print(config.sections()) #读取所有的section

 打印结果分别为:

<class 'configparser.ConfigParser'>
['userinfo', 'otherInfo']

3、读取指定索引下的section就key

# 获取指定 section 的 keys
option = conf.options(conf.sections()[0]) #获取第0个 section下的所有选项或value
# 等价于 option = conf.options('logoninfo')
print(option)

结果为:['user', 'passwd']

4、获取指定section下key设置的值

    value = config.get('userinfo', 'user')
    print(value) #都认为是字符串,不解析为转义字符
    # 等同于
    passwd = config['userinfo']['passwd']
    print(type(passwd))  #为str类型
    print(passwd)

结果为:

zhang/n\nsan
<class 'str'>
123456

5、生成配置文件

import configparser                     # 引入模块

config = configparser.ConfigParser()    #实例化一个对象

config["userinfo"] = {                 # 类似于操作字典的形式
    'user': zhang/n\nsan,
    'passwd': 123456
}

config['otherinfo'] = {
    "address": bejing,
    "age": 20

}

with open('config.ini', 'w') as configfile:
    config.write(configfile)

在当前目录下文件写入成功。

6、修改配置文件

import configparser

config = configparser.ConfigParser()			# 实例化一个对象

config.read('config.ini')                       # 读文件

config.add_section('yuan')                      # 添加 section

config.remove_section('mysq.org')               # 删除 section
config.remove_option('logoninfo', "popserver")  # 删除一个配置项

config.set('logging', 'level', '3')				# 修改执行 section 指定 key 的 value
config.set('yuan', 'k2', '22222')				# 添加一个配置项
with open('config.ini', 'w') as f:
    config.write(f)

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值