• python 的configparse 读取ini 文件


    python 那些事,读取配置文件再也不是什么难事

    python 的configparse  是python自带的类,我们可以直接使用。挺方便的,我在这里又稍稍改写了一下,大家可以参考

    常用的一些方法:

    1. config.read(filename) #读取文件内容
    2. config.sections() #得到所有的section,并且以列表形式返回
    3. config.options(section) #得到section下所有的option
    4. config.items(option) #得到该section所有的键值对
    5. config.get(section, option) #得到section中option的值,返回string类型的结果
    6. config.getint(section, option) #得到section中option的值,返回int类型的结果
    7. config.write(filename) #将configparser对象写入.ini类型的文件
    8. add_section() #添加一个新的section
    9. add_set(section, option, value) #对section中的option信息进行写入
    10. config.read(filename) #读取文件(这里需要注意的是:一定要先读取文件,再进行修改)
    11. config.remove_section(section) #删除文件中的某个section的数值
    12. config.remove_option(section, option) #删除文件中某个section下的option的数值

    文件的准备:

    1. [URL]
    2. homepage_url=https://www.baidu.com/
    3. [mailInfo]
    4. host=smtp.163.com
    5. account=12345678@163.com
    6. password=12345678

    代码如下:

    1. import configparser
    2. class ConfigUtils(object):
    3. def __init__(self,filepath):
    4. self.config = configparser.ConfigParser()
    5. self.config.read(filepath, encoding="utf-8")
    6. pass
    7. def getConfig(self,section,key=None):
    8. '''
    9. 如果传递过来key就返回 对应 的key值,否则 直接返回 整个对象
    10. :param section: 中括号中的区域 [mailInfo]
    11. :param key: 这个区域下面的键
    12. :return:
    13. '''
    14. if key != None:
    15. return self.config.get(section,key)
    16. else:
    17. data_list = {}
    18. for x in list(self.config.items(section)):
    19. data_list[x[0]] =x[1]
    20. return data_list
    21. if __name__ == '__main__':
    22. config = ConfigUtils("./test.ini")
    23. ret = config.getConfig("mailInfo")
    24. print(ret)

  • 相关阅读:
    harbor安装
    Pytorch实战 | 第P1周:实现mnist手写数字识别
    为什么说 Gradle 是 Android 进阶绕不去的坎 —— Gradle 系列(1)
    虹科分享 | AR眼镜开启工业创新之旅!
    SpringBoot源码学习四——MVC主流程下
    ArrayList 与 顺序表 (附洗牌算法)!
    软件测试架构师的工作日常
    git rebase合并冗余提交记录
    docker-metabase镜像打入clickhouse驱动
    1688往微信小程序自营商城铺货商品采集API接口
  • 原文地址:https://blog.csdn.net/davice_li/article/details/127700253