Python读取ini配置文件
Posted CrissChan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python读取ini配置文件相关的知识,希望对你有一定的参考价值。
# -*- encoding: utf-8 -*-
import os
from configparser import ConfigParser, NoSectionError, NoOptionError, MissingSectionHeaderError
class ConfigFileParser(object):
def __init__(self, file=None):
"""
初始化
:param file: 配置文件路径,默认为根路径下ini文件
"""
_init_err_code()
self.configer = ConfigParser()
self.file = file
if not os.path.exists(file):
raise FileNotFoundError("请确保配置文件存在!")
try:
self.configer.read(file, encoding='utf-8')
except :
print({"20002":"MissingSectionHeaderError,文件不符合格式或字符集编码有问题"})
def get_value(self, title, key):
"""
获取配置文件中的值
:param title:
:param key:
:return:
"""
# global config
try:
the_value = self.configer.get(title, key)
except NoSectionError:
print({ "20003":"NoSectionError,title没有找到"})
the_value = "error"
except NoOptionError
print({ "20003":"NoSectionError,title没有找到"})
the_value = "error"
return the_value
def set_value(self, title, key, value):
"""
设置配置文件中的键值
:param title:
:param key:
:param value:
:return:
"""
# global config
self.configer.set(title, key, value)
def get_config_ini(self):
file = os.path.join(os.getcwd(), "configer.ini")
self.configer = ConfigParser()
if not os.path.exists(file):
raise FileNotFoundError("请确保配置文件存在!")
try:
self.configer.read(file, encoding='utf-8')
except:
print({"20002":"MissingSectionHeaderError,文件不符合格式或字符集编码有问题"})
def write_config_ini(self, section, option, value):
try:
configer = self.configer
configer.set(section, option, value)
configer.write(open(self.file, "w", encoding='UTF-8'))
except:
print("更新ini文件失败!")
class ConfigFileParserIni(ConfigFileParser):
def __init__(self):
"""
加载框架级配置文件configer
"""
file = os.path.join(os.getcwd(), "configer.ini")
super().__init__(file)
以上是关于Python读取ini配置文件的主要内容,如果未能解决你的问题,请参考以下文章