configparser模块——用于生成和修改常见配置文档

Posted GraceZen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了configparser模块——用于生成和修改常见配置文档相关的知识,希望对你有一定的参考价值。

  • 配置文档格式
  • 技术分享图片
    1 [DEFAULT]
    2 ServerAliveInterval = 45
    3 Compression = yes
    4 CompressionLevel = 9
    5 ForwardX11 = yes
    6 
    7 [bitbucket.org]
    8 User = hg
    配置文档文件格式
  • 解析配置文件:查询
  • 技术分享图片
     1 #-*- coding:utf-8 -*-
     2 #解析配置文件
     3 import configparser
     4 config = configparser.ConfigParser()
     5 print(config.sections())#[],此时打印为空,因为还没有读文件呢
     6 config.read("example.ini")
     7 print(config.sections())#打印节点[‘bitbucket.org‘, ‘topsecret.server.com‘]
     8 if bitbucket.org in config:  #判断该节点是否在配置文件中
     9     print(true)
    10 print(config[bitbucket.org][User])#hg,查询value值,操作方式和字典一样
    11 print(config[DEFAULT][Compression])#yes,查询value值,操作方式和字典一样
    12 topsecret = config[topsecret.server.com]
    13 print(topsecret[ForwardX11])#no
    14 print(topsecret[Port])#50022
    15 
    16 for key in config[bitbucket.org]:#用for循环打印,除打印除‘bitbucket.org‘内的key,也会打印出‘default’中的key,
    17                                         # ‘default‘中的内容是默认每个节点模块共享的,这样可以避免重复写
    18     print(key)#user serveraliveinterval  compression  compressionlevel forwardx11
    解析配置文件
  • 其他增删改查语法
  • 技术分享图片
     1 import configparser
     2 config = configparser.ConfigParser()
     3 config.read(example.ini)
     4 secs = config.sections()#获取节点
     5 print(secs)#[‘bitbucket.org‘, ‘topsecret.server.com‘]
     6 options = config.options(bitbucket.org)#获取某一节点下的KEY
     7 print(options)#[‘user‘, ‘serveraliveinterval‘, ‘compression‘, ‘compressionlevel‘, ‘forwardx11‘]
     8 item_list = config.items(bitbucket.org)#获取某一节点下的KEY,value
     9 print(item_list)#[(‘serveraliveinterval‘, ‘45‘), (‘compression‘, ‘yes‘), (‘compressionlevel‘, ‘9‘), (‘forwardx11‘, ‘yes‘), (‘user‘, ‘hg‘)]
    10 val = config.get(bitbucket.org,serveraliveinterval)
    11 print(val)#45,str格式
    12 val = config.getint(bitbucket.org,serveraliveinterval)
    13 print(val)#45,int格式
     
  • 技术分享图片
    import configparser
    config = configparser.ConfigParser()
    config.read(example.ini)
    #remove section
    # sec = config.remove_section(‘bitbucket.org‘)#移除‘bitbucket.org‘节点
    # print(sec)##True:移除成功,False:移除失败(内容不存在)
    # config.write(open(‘example.ini‘,‘w‘))#写
    #Add section
    # sec = config.has_section(‘group1‘)#判断该节点是否存在
    # print(sec)#False:不存在,True:存在
    # sec = config.add_section(‘group1‘)#添加,如果已经存在,会报错
    # config.write(open(‘example.ini‘,‘w‘))
    
    #add option
    # config.set(‘group1‘,‘K1‘,‘11111‘)#给group1节点添加内容,如果group1不存在,会报错
    # config.write(open(‘example.ini‘,‘w‘))
    
    #remove option
    # sec = config.remove_option(‘group1‘,‘K1‘)#移除option
    # print(sec)#True:移除成功,False:移除失败(内容不存在)
    # config.write(open(‘example.ini‘,‘w‘))
    remove,add

     

以上是关于configparser模块——用于生成和修改常见配置文档的主要内容,如果未能解决你的问题,请参考以下文章

ConfigParser模块

标准库模块:ConfigParse

day⑥:configparser模块

ConfigParser模块

python-常用模块2

python configparse 模块