zoukankan      html  css  js  c++  java
  • 读取配置文件(.ini或者.conf)

    I.读取配置文件

    (1) 直接读取文件内容 : -read(filename)

    (2) 得到所有的section,并以列表的形式返回 : -sections()

    (3) 得到该section的所有option : -options(section)

    (4) 得到该section的所有键值对 : -items(section)

    (5) 得到section中option的值,返回为string类型 : -get(section,option)

    (6) 得到section中option的值,返回为int类型,还有相应的getboolean()和getfloat() 函数 : -getint(section,option)

    参数说明:file_name[文件名],section[模块名],option[属性名])

    II.写入配置文件

    (1) 将config对象写入至某个 .init 格式的文件 : -write(fp)

    (2) 添加一个新的section : -add_section(section)

    (3) 对section中的option进行设置,需要调用write将内容写入配置文件 : -set( section, option, value

    (4) 删除某个 section : -remove_section(section)

    (5) 删除某个 section 下的 option : -remove_option(section, option)

    完整代码如下:

    import os
    from configparser import ConfigParser
    from com.contants import CONF_DIR # 配置文件目录
    
    conf_path = os.path.join(CONF_DIR, 'conf.ini') #  配置文件路径
    
    class MyConf(ConfigParser):
    
        def __init__(self):
            # 调用父类原来的__init__方法
            super().__init__()
            self.filename = conf_path # 配置文件路径
            self.encoding = 'utf8'
            # # 创建一个文件解析对象,设置对象的conf
            # self.conf = ConfigParser()
            # # 使用解析器对象,加载配置文件中的内容
            self.read(self.filename, self.encoding) # 继承ConfigParser方法,self本省就是一个对象
            """
            # 读取配置数据调用的方法
             # get读取出来字符串,getint读取出来是数值,getfloat读取浮点数,getboolean读取布尔值:True,False
            """
    
        #
        # def get_data(self, section, option): # 可以直接调用父类的读取配置的方法
        #     """
        #     读取配置数据
        #     :param section: 配置块
        #     :param option: 配置项
        #     :return: 配置项对应的数据
        #     """
        #     # get读取出来字符串,getint读取出来是数值,getfloat读取浮点数,getboolean读取布尔值:True,False
        #     return self.get(section,option)
    
    
        def write_data(self,section,option,value):
            """
            写入数据
            :param section: 写入配置块
            :param option: 配置项
            :param value: 配置项对应的值
            :return: None
            """
            # 写入内容
            self.set(section,option,value)
            # 保存到文件
            with open(self.filename,'w',encoding=self.encoding) as f:
                self.write(f)
    
    # 创建一个对象
    conf = MyConf()
    
    if __name__ == '__main__':
    
        conf1 = conf.get('mysql','host')
        print(conf1)

     

  • 相关阅读:
    Django之templates模板
    Django视图函数之request请求与response响应对象
    Django视图函数之三种响应模式
    Django视图函数函数之视图装饰器
    django 获取request请求对象及response响应对象中的各种属性值
    Django 项目中设置缓存
    python 中 使用sys模块 获取运行脚本时在命令行输入的参数
    Mac 设置终端中使用 sublime 打开文件
    iterm2 恢复默认设置
    Python replace方法的使用
  • 原文地址:https://www.cnblogs.com/kite123/p/13743412.html
Copyright © 2011-2022 走看看