简介
configParser,用于读取配置文件的库。
python2中,该库名为ConfigParser
python3中,该库名为configparser
配置文件格式
[]内的值为section,section下面为类似于key-value的配置内容
[db]
db_host = 127.0.0.1
db_port = 3306
db_user = root
db_pass = root
host_port = 69
[sql]
thread = 10
简单使用
1.获取所用section节点
import configparser
config = configparser.ConfigParser()
config.read("php.ini", encoding="utf-8")
print(config.sections())
2.获取指定section的options
下面的代码都承接上面代码写
r = config.options("db")
print(r)
# 结果
# ['db_host', 'db_port', 'db_user', 'db_pass', 'host_port']
3.获取指定section下面指定option的值
r = config.get("db","db_host")
# r1 = config.getint("db", "db_host") #将获取到值转换为int型
# r2 = config.getboolean("db", "db_host" ) #将获取到值转换为bool型
# r3 = config.getfloat("db", "db_host" ) #将获取到值转换为浮点型
print(r)
# 127.0.0.1
4.获取指定section的配置信息(key-value对获取)
r = config.items("db")
print(r)
# [('db_host', '127.0.0.1'), ('db_port', '3306), ('db_user', 'root'), ('db_pass', 'root'), ('host_port', '69')]
5.设置某个option的值,不存在则会创建
config.set("db", "db_host", "192.169.1.128") # 修改config变量中的值,不影响文件中原来的值
config.write(open("php.ini", "w")) # 将修改后的config内容写入文件,影响文件原来的值
6.检查section或option是否存在
config.has_section("section") #是否存在该section
config.has_option("section", "option") #是否存在该option
7.添加section和option
实际上和set
差不多,但是add_section
只能对存在的值操作,否则会报错
if not config.has_section("default"):
config.add_section("default")
if not config.has_option("default", "db_host"):
config.set("default", "db_host", "1.1.1.1")
config.write(open("php.ini", "w"))
8.删除section和option
config.remove_section("default") #整个section下的所有内容都将删除
config.write(open("php.ini", "w"))