.ini 文件是Initialization File的缩写,即初始化文件 [1] ,是windows的系统配置文件所采用的存储格式,统管windows的各项配置,一般用户就用windows提供的各项图形化管理界面就可实现相同的配置了。
下面是一段正常读写ini文件实现方法
#!/usr/bin/env python3
# -*- conding:utf-8 -*-
'''
@Time : 2019/8/6 22:32
@Author : Swift
@contact : ilyzhaoxin@sina.com
@File : test3.py
'''
from configparser import ConfigParser as CP
config = CP()
config.add_section('test') ##添加一个section
config.set("test", 'test1', 'test1') ## 对于的section中加入一个属性
config.set("test", 'test2', 'test2')
config.set("test", 'test3', 'test3')
config.set("test", 'test4', 'test4')
with open("test.ini", 'w') as f:
config.write(f) ## 写人文件中
config.read("test.ini") ### 读取ini配置文件
print(config.get("test", 'test1')) ##获取
print(config.get("test", "test3"))
由于默认的写操作会把option的大写全部转化为小写,则需要重写optionxform
#!/usr/bin/env python3
# -*- conding:utf-8 -*-
'''
@Time : 2019/8/6 22:32
@Author : Swift
@contact : ilyzhaoxin@sina.com
@File : test3.py
'''
from configparser import ConfigParser as CP
class MyConfig(CP):
def __init__(self, defaults=None):
CP.__init__(self, defaults=defaults)
## 重写
## 原方法为
# def optionxform(self, optionstr):
# return optionstr.lower()
def optionxform(self, optionstr):
return super().optionxform(optionstr)
def set(self, section, option, value=None):
if self.get(section, option):
print("[INFO] old is [%s] === new is [%s]" %(self.get(section, option), value))
super().set(section, option, value)