ini文件格式是某些平台或软件上的配置文件的非正式标准,以节(section)和键(key)构成,常用于微软Windows操作系统中。
ini文件主要存放常量、用户所做的选择以及系统的各种参数。用户可以通过修改ini文件,来改变应用程序和系统的很多配置。格式如下:
[section_1]
name_1 = value_1
name_2 = value_2
configparser 是 Pyhton 标准库中用来解析配置文件的模块,并且内置方法和字典非常接近。Python2.x 中名为 ConfigParser,3.x 已更名小写configparser,并加入了一些新功能。
使用 configparser 需要初始化实例,并读取配置文件:
import configparser
cf = configparser.ConfigParser()
#这里的大小写需要注意.
cf.read("config.ini")
1. 获取所有 sections
2. 获取指定 section 的 keys
3. 获取指定 section 的 keys & values
4. 获取指定 section里某key 的 value
cf.sections()
cf.options('section_1')
cf.items('section_1')
cf.get('section_1', 'name_1')
1. 添加section
2. 添加指定 section 的 keys和value
3. 在进行添加操作之后必须使用write将文件写回
cf.add_section('section_2')
cf.set('section_2', 'key_1', 'value_1')
cf.write(open('config.ini', 'w'))
1. 删除section
2. 删除指定 section 的 keys和value
3. 在进行删除操作之后必须使用write将文件写回
cf.remove_section('section_2')
cf.remove_option('section_2', 'key_1', 'value_1')
cf.write(open('config.ini', 'w'))
在工程中需要加入自己对配置文件数据的操作及检查,所以重新封装了configparser类,具体代码如下:
import os,re
import configparser
class INI_object:
def __init__(self):
#function: 初始化INI文件
config_file_path = self.getProjectPath() + "\\configure.ini"
self.cf = configparser.ConfigParser()
self.cf.read(config_file_path)
def getProjectPath(self):
#function: 获取当前工程绝对路径
str = os.path.dirname(os.path.abspath(__file__))
file_path = str + "\\config.ini"
return str
def get(self,section, option):
#function: 读取INI文件配置信息.
try:
ret = self.cf.get(section, option)
return ret
except:
print("不能获取到%s选项 %s的值." %(section,option))
exit(1)
def set(self,section, option, value):
#function: 设置INI文件配置信息.
return self.cf.set(section, option, value)
if __name__ == "__main__":
ini = INI_object()
config = ini.get('Section', 'Option')
更多用法请看官方文档:https://docs.python.org/3.6/library/configparser.html