Python学习---重点模块之configparse

Posted 小a玖拾柒

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python学习---重点模块之configparse相关的知识,希望对你有一定的参考价值。

configparse模块常用于生成和修改常见的配置文档

生成配置模块:用字典写

import configparser

config = configparser.ConfigParser()
config["DEFAULT"] = {\'ServerAliveInterval\': \'45\',
                     \'Compression\': \'yes\',
                     \'CompressionLevel\': \'9\'}

config[\'USER\'] = {}
config[\'USER\'][\'User\'] = \'hhh\'
config[\'SSH\'] = {}
topsecret = config[\'SSH\']
topsecret[\'Host Port\'] = \'50022\'  # mutates the parser
topsecret[\'ForwardX11\'] = \'no\'  # same here
config[\'DEFAULT\'][\'ForwardX11\'] = \'yes\'
with open(\'example.ini\', \'w\') as configfile:
    config.write(configfile)

image

读取配置:config.sections()

import configparser
config = configparser.ConfigParser()
config.read(\'example.ini\')                  
print(config.sections())                     # [\'USER\', \'SSH\'], 默认不dayin[DEFAULT]模块
print(config[\'USER\'])                        # <Section: USER>
print(config[\'USER\'][\'user\'])                # hg
print(config.defaults())                     # 打印默认模块, 打印出来一个有序的字典
print(config.has_section(\'USER\'))            # True
 OrderedDict
print(config[\'DEFAULT\'][\'compressionlevel\']) # 9   # 打印默认模块, 打印出来一个有序的字典OrderedDict
# 跟字典一样,只打印key的信息
for key in config[\'DEFAULT\']:
    # print(key, v)  报错, too many values to unpack (expected 2)
    print(key)

删除整个模块: remove,文件不能修改,只能覆盖,可以重新写入新的文件

import configparser
config = configparser.ConfigParser()
config.read(\'example.ini\')

# 文件不能修改,只能覆盖,可以重新写入新的文件
config.remove_section(\'SSH\')
with open(\'example.ini\', \'w\', encoding=\'utf-8\') as f:
    config.write(f)
print(config.sections())

删除模块下的某个元素

import configparser
config = configparser.ConfigParser()
config.read(\'example.ini\')

print(config.has_option(\'USER\', \'user\'))
config.remove_option(\'USER\', \'user\')
print(config.has_option(\'USER\', \'user\'))

with open(\'example.ini\', \'w\', encoding=\'utf-8\') as f:
    config.write(f)

修改配置:

import configparser
config = configparser.ConfigParser()
config.read(\'example.ini\')

print(config[\'USER\'][\'user\'])
config.set(\'USER\', \'user\', \'ftl\')
print(config[\'USER\'][\'user\'])

with open(\'example.ini\', \'w\', encoding=\'utf-8\') as f:
    config.write(f)

以上是关于Python学习---重点模块之configparse的主要内容,如果未能解决你的问题,请参考以下文章

Python学习---重点模块之re

python入门开发学习笔记之掌握sys模块的使用

二 python并发编程之多进程-重点

干货:入门Python需要重点学习的几个模块

测试女巫之接口测试篇

configparser模块