六、配置文件读取封装

1、函数设计
类设计:ConfigParse
- init 方法:
- 初始化 ConfigParse 类的实例。
- 默认使用 FILE_PATH['ini'] 作为配置文件路径。
- 创建 configparser.ConfigParser 实例。
- 调用 read_config 方法读取配置文件。
- read_config 方法:
- 使用 config.read 方法读取指定路径的配置文件。
- get_value 方法:
- 从配置文件中获取指定 section 和 option 的值。
- 捕获异常并打印错误信息。
- get_host 方法:
- 直接从 Host 部分获取指定 option 的值。
- 调用 get_value 方法实现。
- get_MySQL 方法:
- 直接从 MySQL 部分获取指定 option 的值。
- 调用 get_value 方法实现。
2、代码

点击查看代码
"""
ConfigParse 类:
提供了一个封装的接口来读取 .ini 配置文件。
支持从特定部分获取配置值。
提供了快捷方法来获取 Host 和 MySQL 部分的值。
"""

# configparser 模块用于读取和写入配置文件
import configparser
# 引入seting文件中设置的ini文件的路径
from configs.setting import FILE_PATH

class ConfigParse:
    """
    解析.ini后缀的配置文件
    """

    def __init__(self,file_path=FILE_PATH['ini']):
        self.file_path = file_path
        self.config = configparser.ConfigParser()
        self.read_config()

    def read_config(self):
        self.config.read(self.file_path)

    def get_value(self,section,option):
        """
        获取配置文件的值
        :param section:头参数
        :param option:下一级参数
        :return:
        """
        try:
            return self.config.get(section,option)
        except Exception as e:
            print(f'解析配置文件出现异常,原因:{e}')

    def get_host(self,option):
        """
        直接获取host值,不用输入上一级信息
        :param option:
        :return:
        """
        return self.get_value('Host',option)

    def get_MySQL(self,option):
        """
        直接获取mysql的值,不用输入上一级信息
        :param option:
        :return:
        """
        return self.get_value('MySQL',option)

if __name__ == '__main__':
    conf = ConfigParse()
    res = conf.get_value('Host','host')
    print(res)

    res1 = conf.get_host('host')
    print(res1)

    res2 = conf.get_MySQL('port')
    print(res2)
posted @ 2025-02-25 14:09  测试三思  阅读(41)  评论(0)    收藏  举报