zoukankan      html  css  js  c++  java
  • Python读写配置文件模块--Configobj

    一、介绍

    我们在项目的开发过程中应该会遇到这样的问题:我们的项目读取某个配置文件,然后才能按照配置的信息正常运行服务,当我们需要对修改服务的某些信息时,可以直接修改这个配置文件,重启服务即可,不用再去打开项目代码进行修改,这样方便了我们后期运维人员的工作。

    读取配置文件信息,修改配置文件,我们可以使用Configobj和ConfigParser模块,个人推荐使用Configobj模块,因为Configobj相比于ConfigParser,优势在于Configobj模块的使用更加清晰简单(其实是我看到ConfigParser模块好像复杂一点,自己选了个简单点的模块而已,哈哈哈哈哈)。

    pip install configobj

    configobj的简单之处就在于,它是以字典的形式来读取/修改配置文件,就跟操作字典一样,很简单,下面看看例子就知道了。

    二、configobj的使用

    1、test.cfg配置文件

    配置文件内容如下

    [server]
    name = zbj
    port = 9000
     
    [home]
    # 注释
    area = huizhou

    2、读取配置文件信息

    from configobj import ConfigObj
    
    
    # 实例化一个Configobj对象,给ConfigObj一个配置文件的路径,然后通过字典来访问成员,子段也是一个字典
    cfg_path = "./test.cfg"
    config = ConfigObj(cfg_path, encoding='UTF-8')
    
    # 读配置文件
    print(config['server'])  # {'name': 'zbj', 'port': '9000'}
    print(config['server']['name'])  # zbj

    3、修改配置文件

    from configobj import ConfigObj
    
    
    cfg_path = "./test.cfg"
    config = ConfigObj(cfg_path, encoding='UTF-8')
    config['server']['name'] = "clj"
    # 修改完记得write写入配置文件
    config.write()

    4、给配置文件添加新项

    from configobj import ConfigObj
    
    cfg_path
    = "./test.cfg" config = ConfigObj(cfg_path, encoding='UTF-8') config['school'] = {} config['school']['class'] = "three" # 只要进行了修改(包括新增删除等)的操作,记得write修改 config.write()

    5、删除配置文件中的某个项

    from configobj import ConfigObj
    
    
    cfg_path = "./test.cfg"
    config = ConfigObj(cfg_path, encoding='UTF-8')
    del config['school']
    del config['server']['port']
    config.write()

    6、将配置文件写入到不同的文件

    from configobj import ConfigObj
    
    
    cfg_path = "./test.cfg"
    config = ConfigObj(cfg_path, encoding='UTF-8')
    config.filename = "./test.ini"
    config.write()
    # 此时会新建一个test.ini文件,然后会将test.cfg的内容写入到test.ini文件

    7、创建新的配置文件

    from configobj import ConfigObj
    
    
    # 实例化一个ConfigObj对象
    config = ConfigObj()
    # filename指定新创建的文件路径和名称
    config.filename = './my_cfg.ini'
    
    # 写入配置信息
    config['people'] = {}
    config['people']['name'] = 'zzbj'
    config['people']['age'] = '18'
    config.write()

  • 相关阅读:
    第一节:SpringMVC概述
    SpringMVC【目录】
    Windows 系统快速查看文件MD5
    (error) ERR wrong number of arguments for 'hmset' command
    hive使用遇到的问题 cannot recognize input
    Overleaf支持的部分中文字体预览
    Understanding and Improving Fast Adversarial Training
    Django2实战示例 第十三章 上线
    Django2实战示例 第十二章 创建API
    Django2实战示例 第十一章 渲染和缓存课程内容
  • 原文地址:https://www.cnblogs.com/Zzbj/p/12300897.html
Copyright © 2011-2022 走看看