configparser模块
Posted kp1995
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了configparser模块相关的知识,希望对你有一定的参考价值。
配置文件:
[section1] k1 = v1 k2:v2 user=egon age=18 is_admin=true salary=31 [section2] k1 = v1
读取
import configparser # 创建一个配置文件解析器 config = configparser.ConfigParser() # 读取名为test.cfg的解释器 config.read(‘test.cfg‘, encoding=‘utf-8‘) # 查看所有标题 res = config.sections() print(res) # [‘mysql1‘, ‘mysql2‘] # 查看标题mysql1下所有key=value 的key options = config.options(‘mysql1‘) print(options) # [‘username‘, ‘password‘] # 查看标题mysql1下所有key=value的(key,value)格式 item_list = config.items(‘mysql1‘) print(item_list) # [(‘username‘, ‘jack‘), (‘password‘, ‘123‘)] # 查看标题mysql1下username的值=>字符串格式 val = config.get(‘mysql1‘, ‘username‘) print(val) # jack # 查看标题mysql1下password的值=>整数格式 val1 = config.getint(‘mysql1‘, ‘password‘) print(val1) # 123 # 查看标题mysql1下is_admin的值=>布尔值格式 val2 = config.getboolean(‘mysql1‘,‘is_admin‘) print(val2) # True # 查看标题mysql1下salary的值=> 浮点型格式 val3 = config.getfloat(‘mysql1‘,‘salary‘) print(val3) #31.0
改写
import configparser config = configparser.ConfigParser() config.read(‘test.cfg‘, encoding=‘utf-8‘) # 删除整个标题mysql2 config.remove_section(‘mysql2‘) # 删除标题mysql1下的某个password config.remove_option(‘mysql1‘, ‘password‘) # 判断是否存在某个标题 print(config.has_section(‘mysql1‘)) # 判断标题mysql1下是否有password print(config.has_option(‘mysql1‘, ‘password‘)) # 添加一个标题 config.add_section(‘kopa‘) # 在标题kopa下添加name=kopa,age=18的配置 config.set(‘kopa‘, ‘name‘, ‘kapa‘) # config.set(‘kopa‘, ‘age‘ ,18) #报错,必须是字符串格式 # 最后将修改的内容写入文件,完成最终修改 config.write(open(‘test.cfg‘, ‘w‘))
以上是关于configparser模块的主要内容,如果未能解决你的问题,请参考以下文章