ini文件在我们项目里面一般是必不可少的一种配置文件,主要管理一些常用项目配置,如环境、链接信息等等
ini文件写法介绍
INI配置文件由parameters,sections和comments三部分组成
parameters:指一条具体的配置信息,就像key = value这样的,如:
?url=http://localhost/api/user/login
sections:所有的parameters都是以sections为单位结合在一起的。所有的section名称都是单独一行,并且sections名字都是用方括号管理,如:[ XXX ]。在section下写的所有parameters都是属于该section。对于一个section没有明显的结束标志符,一个section的开始就是上一个section的结束,如:
?[COOKIE_CONFIG]
?;登陆的url
?url=http://101.200.61.210:8087/api/user/login
comments:在INI文件中注释语句是以分号“;”开始的。所有的所有的注释语句不管多长都是独占一行直到结束的。在分号和行结束符之间的所有内容都是被忽略的。如:
?;配置登陆账号密码,获取登陆后的token
?[COOKIE_CONFIG]
?;登陆的url
?url=http://101.200.61.210:8087/api/user/login
?;登陆时的请求参数
?params={"userName":"admin",
? ? ? ? "password":"123456",
? ? ? ? "remember":False}
如何操作ini文件
首先创建一个config.ini文件,内容如下
[TEST]
test_key = 123123
[TEST2]
test_key2 = QWEW123123
对config.ini文件的增删改查操作
# !/usr/bin/env python
# -*- encoding: utf-8 -*-
# @Author : yyq
import configparser
import projectPath #这个是一个封装的获取项目根路径的包
"""对ini文件进行增删改查操作"""
# 初始化
cf = configparser.ConfigParser()
# 读取ini文件,参数为要读取的ini文件的路径
cf.read(projectPath.path + '/test/config.ini')
# 获取所有sections。即将配置文件中所有“[ ]”读取到列表中
section = cf.sections()
print('获取所有的key:', section)
# 即将配置文件某个section内key 读取到列表中
key = cf.options("TEST")
print("参数:", key)
# 获取指定section 的配置信息
int_value = cf.getint("TEST", "test_key")
print("获取对应的整数值:", type(int_value), int_value)
str_value = cf.get("TEST2", "test_key2")
print("获取对应的值字符串类型:", type(str_value), str_value)
'''ini文件写入'''
# 添加一个section。(同样要保存)
cf.add_section('delete')
cf.set('delete', 'key', 'delete_value')
cf.add_section('写INI文件')
cf.set('写INI文件', '写的key1', '写的value1')
cf.set('写INI文件', '写的key2', '写的value2')
with open('config.ini', 'a', encoding='utf8') as configfile:
cf.write(configfile)
# 移除section 或者option
cf.remove_option('delete', 'key')
cf.remove_section('delete')
cf.write(open('config.ini', 'w'))
# 修改内容
cf.set('写INI文件', "写的key2", "修改后的value2")
cf.write(open('config.ini', "r+", encoding="utf-8"))
以上便是对ini配置文件的一些基本常用操作
|