python-configparser模組學習
阿新 • • 發佈:2021-06-29
configparser模組:讀取配置檔案的包,配置檔案由章節(section[sectionName])、鍵、值組成。(key=value or key: value),其中key=value通過被稱為option
1、新建一個config.ini檔案
1 [wework] 2 corp_id = 111111 3 contact_secret = 11111 4 meeting_room_secret = 1111 5 schedule_secret = 11111 6 hahaha: hohoho
2、基本用法:
#!/usr/bin/env python # -*- coding: utf-8 -*-# @File : config.py # @Author: ttwang # @Date : 2021/6/28 # @Desc : configparser模組學習 import configparser import os # 獲取config.ini檔案 base_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) config_file_path = os.path.join(base_path,"config.ini") # 一、讀取config_ini中章節(section)、鍵(option)、值(value)# 1 建立configparser例項 config = configparser.ConfigParser() # 2 讀取config.ini配置檔案 config.read(config_file_path) # 3 獲取config.ini檔案中的章節(section) print(config.sections()) # 本例中列印為:['wework'] # 4 獲取config.ini檔案指定section的option,即key=value中key print(config.options('wework')) # 4中列印:['corp_id', 'contact_secret', 'meeting_room_secret', 'schedule_secret', 'hahaha']# 5 獲取config.ini檔案中指定section的option值,即key=value中的value print(config.get('wework','corp_id')) # 6 獲取配置檔案中對應章節的所有鍵值對 print(config.items('wework')) # 6中列印:[('corp_id', '55555'), ('contact_secret', '11111'), ('meeting_room_secret', '1111'), ('schedule_secret', '11111'), ('hahaha', 'hohoho')] # 二、往config_ini寫入章(seciton)、鍵(option)、值(value) # 1 增加section, config.add_section("wechat") # 2 往配置檔案的[wechat]章節下加入鍵值 config.set("wechat",'name','ttwang') # 3 儲存 with open(config_file_path,"w+") as f: config.write(f)
3、簡單的例項化:
1)學習參考:
https://github.com/a376230095/wwork_api_interface_test2)更規範的可以學習:https://blog.csdn.net/qq_35653145/article/details/106042406
#!/usr/bin/env python # -*- coding: utf-8 -*- # @File : config.py # @Author: ttwang # @Date : 2021/6/28 # @Desc : 讀取配置檔案的封裝類 import configparser import os class ConfigIni: # 獲取專案的絕對路徑 BASE_PATH = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # 獲取配置檔案config.ini的路徑 config_file_path = os.path.join(BASE_PATH,"config.ini") def __init__(self,file_path=config_file_path): # 為了讓寫入檔案的路徑是唯一值,因此這樣定義 self.config_file_path= file_path # 例項化configparser物件 self.cf = configparser.ConfigParser() # 讀取配置檔案 self.cf.read(file_path) # 獲取配置檔案中的option值,即key=value中的value def get_key(self, section, option): value = self.cf.get(section, option) return value # 新增配置檔案中的option值,即key=value中的value def set_value(self, section, option, value): self.cf.set(section, option, value) with open(self.config_file_path, "w+") as f: self.cf.write(f) # 配置物件為單例模式,其他模組直接引用 cf = ConfigIni() if __name__ == "__main__": print(cf.get_key("wework", "contact_secret"))