ini文件一般当做配置文件使用,在写Flask API项目的时候也使用ini文件作为配置文件,本片文章主要记录Python如何操作ini文件。
Python中自带configparser
来操作ini文件,但是这个模块存在一些缺陷,无法识别section的大小写,无法读取到文件的注释,这样带有注释的配置文件操作时候就会存在问题。
0x01 实例文件
config.ini
1 | [persion] |
2 | name = Joynice |
3 | age = 18 |
4 | sex = 男 |
0x02 读取文件
1 | import configparser |
2 | |
3 | config = configparser.ConfigParser() |
4 | config.read('config.ini', encoding='gbk') |
5 | items = config.items("persion") #返回persion下所有数据:[('name', 'Joynice'), ('age', '18'), ('sex', '男')] |
6 | sections = config.sections() #获得所有的节点名称:['persion'] |
7 | name = config.get('persion','name') #获取指定节点的特定字段:Joynice |
0x03 增加数据
1 | config.add_section("persion2") #添加一个节点 |
2 | config.set("persion2", "name", "zhangsan") #添加节点数据 |
3 | config.set("persion2", "age", "18") # 添加阶段数据 |
4 | config.set("persion2", "sex", "女") #添加阶段数据 |
5 | config.write(open('config.ini', "w")) #写入文件中 |
此时文件如下:
1 | [persion] |
2 | name = Joynice |
3 | age = 18 |
4 | sex = 男 |
5 | |
6 | [persion2] |
7 | name = zhangsan |
8 | age = 18 |
9 | sex = 女 |
0x04 修改数据
修改数据,就是使用set
进行重新赋值,举个例子,修改persion2节点下name为lisi
1 | config.set("persion", "name", "lisi") |
2 | config.write(open('config.ini', "w")) #写入文件中 |
0x05 删除数据
1 | config.remove_option("persion", "age") #删除persion节点下的age |