Python3的configparser模塊的使用

import configparser

config = configparser.ConfigParser()

# 字典模式生成配置文件
# 第一個section
config['DEFAULT'] = {
    'A': 'abc',
    'B': '123',  # 數字也要寫成string類型
    'C': 'hello'}

# 第二個section
config['Head'] = {'H1': '100', 'H2': '200', 'H3': '300'}

# 第三個section
config['www'] = {'W1': '199', 'W2': '299'}

# 生成配置文件 並寫入
with open('example.ini', 'w') as configfile:
    config.write(configfile)

# 讀取配置文件
config.read('example.ini', encoding='utf8')

# 打印section時,不會打印默認DEFAULTS,以list形式打印
print('config.sections():', config.sections())

# 打印defaults 時 會以鍵值對,元組形式打印
print('config.defaults():', config.defaults())

# 判斷section是否存在
print('www' in config)  # 存在 True
print('mmm' in config)  # 不存在 False

# 添加 section
config.add_section('T')
print(config.sections())

# 打印[指定section][指定鍵名]
print(config['Head']['H2'])

# 打印某一個非default section時,會將默認內容一併打印
for key in config['Head']:
    print(key)

# set() 修改 鍵值 指定section,指定鍵名,修改成的值
config.set('www', 'W2', '2000')

# 刪除section
config.remove_section('T')
print(config.sections())

# 刪除鍵 option
config.remove_option('www', 'W1')  # 注意 如果後續沒有重新寫入文件操作,該操作不會真正成功

# 只能新建 或是 覆蓋原文件  不能直接修改
config.remove_section('www')  # 注意 如果後續沒有重新寫入文件操作,該操作不會真正成功

# 重新寫入操作,也叫持久化操作 可以把下面註釋掉看看配置文件 上面的刪除操作不會成功
with open('example.ini', 'w') as configfile:
    config.write(configfile)

要點:

  •  config['section']={dict}  ,dict字典賦值
  • 生成配置文件,類似文件操作。with open('filename','w') as configfile: config.write(configfile)
  • 利用config.section() 獲取section時,以list形式打印,不會打印默認DEFAULTS
  • 利用config.defaults() 獲取defaults時,會以鍵值對,元組形式打印
  • 判斷section是否存在:'section' in config
  • 添加section:config.add_section('section_name')
  • 打印某section下的鍵的值:config['section_name']['key']
  • 修改某section下的鍵的值:config.set('section_name','key','value')
  • 刪除某section:config.remove_section('section_name')
  • 刪除某section下的某個鍵:confg.remove_option('section_name','key')
  • 持久化操作,就是文件的寫入,在完成配置文件的增刪改後,重新寫入。with open('filename','w') as configfile: config.write(configfile)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章