Python中级篇(十七)configparser模块

该模块适用于配置文件的格式与windows ini文件类似,可以包含一个或多个节(section),每个节可以有多个参数(键=值)。

创建文件

来看一个好多软件的常见文档格式如下:

[DEFAULT]

ServerAliveInterval = 45

Compression = yes

CompressionLevel = 9

ForwardX11 = yes

[bitbucket.org]

User = hg

[topsecret.server.com]

Port = 50022

ForwardX11 = no

如果想用python生成一个这样的文档怎么做呢?

import configparser

config = configparser.ConfigParser()

config["DEFAULT"] = {'ServerAliveInterval': '45',

                      'Compression': 'yes',

                     'CompressionLevel': '9',

                     'ForwardX11':'yes'                     }

config['bitbucket.org'] = {'User':'hg'}

config['topsecret.server.com'] = {'Host Port':'50022','ForwardX11':'no'}

with open('example.ini', 'w') as configfile:

   config.write(configfile)

查找文件

import configparser

config = configparser.ConfigParser()#---------------------------查找文件内容,基于字典的形式print(config.sections())        #  []config.read('example.ini')print(config.sections())        #   ['bitbucket.org', 'topsecret.server.com']print('bytebong.com' in config) # Falseprint('bitbucket.org' in config) # Trueprint(config['bitbucket.org']["user"])  # hgprint(config['DEFAULT']['Compression']) #yesprint(config['topsecret.server.com']['ForwardX11'])  #noprint(config['bitbucket.org'])          #<Section: bitbucket.org>for key in config['bitbucket.org']:     # 注意,有default会默认default的键    print(key)print(config.options('bitbucket.org'))  # 同for循环,找到'bitbucket.org'下所有键print(config.items('bitbucket.org'))    #找到'bitbucket.org'下所有键值对print(config.get('bitbucket.org','compression')) # yes       get方法Section下的key对应的value

增删改操作

import configparser

config = configparser.ConfigParser()

config.read('example.ini')

config.add_section('yuan')

config.remove_section('bitbucket.org')

config.remove_option('topsecret.server.com',"forwardx11")

config.set('topsecret.server.com','k1','11111')

config.set('yuan','k2','22222')

config.write(open('new2.ini', "w"))

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 场景介绍 一个消息队列(MQ)存储的消息,可以包含不同实际用途。如果这些消息不加区分,消费者每次消费都会按顺序拉取...
    中间件小哥阅读 4,991评论 0 0
  • 世界那么大,我想去看看;天冷起不来,辞职去冬眠。如今,辞职似乎成了大众关注的热点,而奇葩的辞职理由更是层出不穷。 ...
    万象焦点阅读 1,423评论 0 1
  • 今天女儿说要早点去学校,因为表现很好可以加分,为了这个目标的确努力早起了,很棒!把女儿送到学校往回走时,正巧...
    李烽熠妈阅读 1,121评论 0 1
  • 《我的诗词》目录 一位老者 独倚窗前 赏秋雨淅淅沥沥 清清冷冷地下着 秋雨 是如此宁静典雅 于秋雨中 他领略到一种...
    青梅梦语阅读 2,256评论 12 17
  • 或许大多数人认为一个三十岁的女人,不应该总结为人生的末日。但是对于梅子表姐来说,前三十年就已经是她人生的全部。一个...
    二愣子的秋天阅读 1,693评论 1 0

友情链接更多精彩内容