Configureparser制作配置文件


Configureparser制作配置文件

配置文件组成:

键值对,分段[] ,键值对= 注释 #;开头

示例:

**db.ini**

[mysql]
host = localhost
user = user7
passwd = s$cret
db = ydb

[postgresql]
host = localhost
user = user8
passwd = mypwd$7
db = testdb

读取

read()读取配置文件中的所有内容

import configparser

config = configparser.ConfigParser()   #先创建配置文件对象
config.read('db.ini')     #读取文件内容
host = config['mysql']['host']     #获取值

sections() 读取所有部分(即[] 里的内容)

has_section() 查询指定部分是否存在

config = configparser.ConfigParser()

sections = config.sections()
print(f'Sections:{sections}')

for section in sections:
	if config.has_section(section):
		print(True)
/////////////////////////////////////////////////////////////
#Sections: ['mysql', 'postgresql']    #sections()读取的结果是列表
#True
#True

**read_string()** 从字符串中读取配置数据

import configparser

cfg_data = 
'''
[mysql]
host = localhost
user = user7
passwd = s$cret
db = ydb
'''
config = configparser.ConfigParser()
config.read_string(cfg_data)   #读取的结果按如下形式使用

host = config['mysql']['host']
user = config['mysql']['user']
passwd = config['mysql']['passwd']
db = config['mysql']['db']

**read_dict()** 从字典中读取配置数据

cfg_data = {
	'mysql':{'host':'localhost','user':'user7','passwd':'password'}
}   #字典中字典,要分层次
config = configparser.ConfigParser()
config.read_dict(cfg_data)

host = config['mysql']['host']
user = config['mysql']['user']
passwd = config['mysql']['passwd']

写入

**write()** 写入配置数据

add_section() 写入部分(即[section] )

#!/usr/bin/env python3
import configparser

config = configparser.ConfigParser()
config.add_section('mysql')

config['mysql']['host'] = 'localhost'
config['mysql']['user'] = 'user7'
config['mysql']['passwd'] = 's$cret'
config['mysql']['db'] = 'ydb'

with open('db3.ini', 'w') as configfile:
    config.write(configfile)  #写入的时候需要注意句柄位置

原创文章,作者:sunnyman218,如若转载,请注明出处:https://blog.ytso.com/278002.html

(0)
上一篇 2022年7月31日
下一篇 2022年7月31日

相关推荐

发表回复

登录后才能评论