ConfigParser 模块 使用


ConfigParser 模块 使用

作用 可以帮助我们读取配置信息的模块

准确说是把一些不想写死或者不愿意公开但要用到的信息封装起来使用的模块

使用方法 把信息先存在ini 文件中格式如下

----------------config.ini--------------

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

[concurrent] 
thread = 10 
processor = 20

 

使用模块

import configparser 
config = configparser.ConfigParser() 
config.read("config.ini", encoding="utf-8") 
# 读取文件 print(config.sections()) 
# 文件里面中括号部分称作sections 理解为pyton 字典变量名或者哈希名之类的


-------------运行结果

['db', 'concurrent']

r = config.options("db") # 文件sections内的变量名称作options 理解为python字典的键 print(r)

-------------运行结果
['db_host', 'db_port', 'db_user', 'db_pass', 'host_port']


----------接下来就是核心功能读取options的值也就是我们需要使用配置信息了--- 
value = config.get("db", "db_host") print(value)

------
127.0.0.1

--------其他功能-------- 1 获取sections 下的所有信息 items = config.items("db") print(items)


# 运行结果 输出结果用列表嵌套元祖形式保存

# [('db_host', '127.0.0.1'), ('db_port', '69'), ('db_user', 'root'), ('db_pass', 'root'), ('host_port', '69')]

2 反向操作----修改配置文件信息不存在则创建 config.set("db", "db_port", "69") #修改db_port的值为69 config.write(open("ini", "w"))

3 检查section 或option 是否存在 ----- 返回bool  config.has_section("section") #是否存在该section config.has_option("section", "option") #是否存在该option

4 删除文件信息 config.remove_section("default") #整个section下的所有内容都将删除 config.write(open("ini", "w"))