1. 程式人生 > >Python學習---重點模塊之configparse

Python學習---重點模塊之configparse

tps 重點 links ini with rule toolbar too interval

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)

技術分享圖片

讀取配置: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