python用Configobj模块读取配置文件

作者:我用python写Bug 时间:2023-10-30 04:29:00 

一、介绍

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

读取配置文件信息,修改配置文件,我们可以使用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()

python用Configobj模块读取配置文件

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()

python用Configobj模块读取配置文件

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()

python用Configobj模块读取配置文件

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文件

python用Configobj模块读取配置文件

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()

python用Configobj模块读取配置文件

来源:https://www.cnblogs.com/Zzbj/p/12300897.html

标签:python,Configobj,模块,读取,配置文件
0
投稿

猜你喜欢

  • python 命令行传参方法总结

    2021-06-04 20:51:00
  • 详解Django中的ifequal和ifnotequal标签使用

    2023-06-24 05:07:04
  • 手机使用python操作图片文件(pydroid3)过程详解

    2021-06-19 13:45:39
  • Selenium定时刷新网页的实现代码

    2021-09-30 04:01:00
  • Python通过队列实现进程间通信详情

    2023-07-24 17:49:44
  • Python实现电视里的5毛特效实例代码详解

    2023-03-18 00:03:46
  • python 时间信息“2018-02-04 18:23:35“ 解析成字典形式的结果代码详解

    2021-10-28 05:37:14
  • Python3使用xlrd、xlwt处理Excel方法数据

    2023-04-03 03:25:29
  • Python实现导出数据生成excel报表的方法示例

    2021-05-17 16:43:57
  • python面向对象之类的继承详解

    2022-03-20 18:22:22
  • Python定时器线程池原理详解

    2022-02-10 02:09:07
  • 详解pycharm配置python解释器的问题

    2022-10-14 13:22:08
  • php文件类型MIME对照表(比较全)

    2023-06-08 07:24:10
  • Python中super函数用法实例分析

    2023-12-05 14:36:19
  • MySQL也能并发导入数据

    2010-03-25 10:38:00
  • Go 中的空白标识符下划线

    2024-04-29 13:04:42
  • JavaScript正则表达式的贪婪匹配和非贪婪匹配

    2024-04-30 09:53:01
  • Go语言利用Unmarshal解析json字符串的实现

    2024-05-09 09:54:25
  • 了解WEB页面工具语言XML(五)好处

    2008-09-05 17:19:00
  • Python字符转换

    2021-08-23 04:47:13
  • asp之家 网络编程 m.aspxhome.com