tangkaishou

生成配置文件

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 f:
   config.write(f)
View Code
[DEFAULT]
serveraliveinterval = 45
compression = yes
compressionlevel = 9
forwardx11 = yes

[bitbucket.org]
user = hg

[topsecret.server.com]
host port = 50022
forwardx11 = no
example.ini

普通操作

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) # False
print(\'bitbucket.org\' in config) # True

print(config[\'bitbucket.org\']["user"])  # hg
print(config[\'DEFAULT\'][\'Compression\']) #yes
print(config[\'topsecret.server.com\'][\'ForwardX11\'])  #no
#
print(config[\'bitbucket.org\'])          #<Section: bitbucket.org>

for key in config[\'bitbucket.org\']:     # 注意,有default会默认读default的键
    print(key)
"""
user
serveraliveinterval
compression
compressionlevel
forwardx11
"""

print(config.options(\'bitbucket.org\'))  # 同for循环,找到\'bitbucket.org\'下所有键
# [\'user\', \'serveraliveinterval\', \'compression\', \'compressionlevel\', \'forwardx11\']


print(config.items(\'bitbucket.org\'))    #找到\'bitbucket.org\'下所有键值对
# [(\'serveraliveinterval\', \'45\'), (\'compression\', \'yes\'), (\'compressionlevel\', \'9\'), (\'forwardx11\', \'yes\'), (\'user\', \'hg\')]

print(config.get(\'bitbucket.org\',\'compression\')) # yes       get方法Section下的key对应的value
# yes
获取配置信息

高级操作

import configparser
config = configparser.ConfigParser()
config.read(\'example.ini\')   # 读文件
config.add_section(\'yuan\')   # 增加section
config.remove_section(\'bitbucket.org\')   # 删除一个section
config.remove_option(\'topsecret.server.com\',"forwardx11")  # 删除一个配置项
config.set(\'topsecret.server.com\',\'k1\',\'11111\')
config.set(\'yuan\',\'k2\',\'22222\')
f = open(\'new2.ini\', "w")
config.write(f) # 写进文件
f.close()

#这些操作不会修改example.ini的文件 因为是以读打开的文件
读取example.ini写入new2.ini
[DEFAULT]
serveraliveinterval = 45
compression = yes
compressionlevel = 9
forwardx11 = yes

[topsecret.server.com]
host port = 50022
k1 = 11111

[yuan]
k2 = 22222
new2.ini

 

分类:

技术点:

相关文章: