zoukankan      html  css  js  c++  java
  • python中使用configparser库,实现配置文件的读取

    背景:

    在写接口自动化框架,配置数据库连接时,测试环境和UAT环境的连接信息不一致,这时可以将连接信息写到conf或者cfg配置文件中

    python环境请自行准备。

    python代码直接封装成类,方便其他模块的引入。

     1 from configparser import ConfigParser
     2 
     3 class DoConfig:
     4     def __init__(self,filepath,encoding='utf-8'):
     5         self.cf = ConfigParser()
     6         self.cf.read(filepath,encoding)
     7 
     8     #获取所有的section
     9     def get_sections(self):
    10         return self.cf.sections()
    11 
    12     #获取某一section下的所有option
    13     def get_option(self,section):
    14         return self.cf.options(section)
    15 
    16     #获取section、option下的某一项值-str值
    17     def get_strValue(self,section,option):
    18         return self.cf.get(section,option)
    19 
    20     # 获取section、option下的某一项值-int值
    21     def get_intValue(self, section, option):
    22         return self.cf.getint(section, option)
    23 
    24     # 获取section、option下的某一项值-float值
    25     def get_floatValue(self, section, option):
    26         return self.cf.getfloat(section, option)
    27 
    28     # 获取section、option下的某一项值-bool值
    29     def get_boolValue(self, section, option):
    30         return self.cf.getboolean(section, option)
    31 
    32     def setdata(self,section,option,value):
    33         return self.cf.set(section,option,value)
    34 
    35 if __name__ == '__main__':
    36     cf = DoConfig('demo.conf')
    37     res = cf.get_sections()
    38     print(res)
    39     res = cf.get_option('db')
    40     print(res)
    41     res = cf.get_strValue('db','db_name')
    42     print(res)
    43     res = cf.get_intValue('db','db_port')
    44     print(res)
    45     res = cf.get_floatValue('user_info','salary')
    46     print(res)
    47     res = cf.get_boolValue('db','is')
    48     print(res)
    49 
    50     cf.setdata('db','db_port','3306')
    51     res = cf.get_strValue('db', 'db_port')
    52     print(res)
  • 相关阅读:
    P2324 [SCOI2005]骑士精神
    P4160 [SCOI2009]生日快乐
    BZOJ 1103: [POI2007]大都市meg
    P4289 [HAOI2008]移动玩具
    P2472 [SCOI2007]蜥蜴
    adb: command not found 解決方法(转载)
    Thinkpad x230i安装Ubuntu10.04发生no network devices available
    Ubuntu10.04安装与配置nfs服务器(转载)
    RTSP协议简介(转载)
    UIBC 小註解(转载)
  • 原文地址:https://www.cnblogs.com/benben-wu/p/10558792.html
Copyright © 2011-2022 走看看