概述
ini是我们常见到的配置文件格式之一。
ini是微软Windows操作系统中的文件扩展名(也常用在其他系统)。
ini“初始化(Initial)”的缩写。正如该术语所表示的,INI文件被用来对操作系统或特定程序初始化或进行参数设置。
其基本组成形式如下:
[section_1]
key1=value1
key2=value2
key3=value3
key4=value4
[section_2]
key1=value1
key2=value2
key3=value3
key4=value4
我们通过Python的ConfigParser模块来对ini文件进行读写操作。
ConfigParser
读取
- read(filename) 读取ini文件内容
- sections() 获取所有的section,并以列表的形式返回
- options(sections) 获取指定section的所有option
- get(section,option) 获取section中option的值,返回为string类型
写入
- set( section, option, value) 对section中的option进行更新
实例
我们先生成一个ini文件,并写入数据,然后在读取出来显示。
# -*- coding:utf-8 -*-
__author__ = '苦叶子'
# 导入模块
import configparser
if __name__ == "__main__":
# 先构建一个对象
config = configparser.ConfigParser()
# 来让我们写入几组数据
# 先新增一个section
config.add_section("开源优测")
# 在新增的section下加key-value键值对
config.set("开源优测", "微号", "DeepTest")
config.set("开源优测", "口号", "自我娱乐娱乐")
config.set("开源优测", "号外", "其实我开了好多号")
# 再新增一个section,但不加key-value键值对
config.add_section("我好孤单")
# 写入文件
with open('iniConfig.ini', 'w') as configfile:
config.write(configfile)
#####################################
# 下面开始我们来把刚才的ini文件读出来看看
config.read("iniConfig.ini")
# 获取它的所有section
sections = config.sections()
print(sections)
# 获取section下所有的options
for sec in sections:
options = config.options(sec)
print(options)
# 根据sections和options获取对应的value值
for sec in sections:
for option in config.options(sec):
print("[%s] %s=%s " % (sec, option, config.get(sec, option)))
小结
对INI文件应用场景,一般都是用于做初始化配置文件用,当然你要是愿意也可以用来做数据的存储。
留个小题目,请尝试自己用类封装一个通用的ini文件操作类。