1. 簡介
configparser用於配置文件解析,可以解析特定格式的配置文件,多數此類配置文件名格式為XXX.ini,例如mysql的配置文件。在python3.X中
模塊名為configparser ,在python2.X中使用的模塊名為ConfigParser。
##### ini 文件示例 ######## [section1] name = wang age = 18 [section2] name:python age = 19 #### 文件格式說明 ######### [XXX] 代表節點 XX = XX 或者 XX : XX 代表參數
2. 使用
import configparser # 導入模塊 config = configparser.ConfigParser() # 創建對象 config.read("user.ini", encoding="utf-8") # 讀取配置文件,如果配置文件不存在則創建 # 查看 secs = config.sections() # 獲取所有的節點名稱 print(secs) # ['section1', 'section2'] options = config.options('section1') # 獲取指定節點的所有key print(options) # ['name', 'age'] item_list = config.items('section1') # 獲取指定節點的鍵值對 print(item_list) #[('name', 'wang'), ('age', '18')] val = config.get('section1', 'name') # 獲取指定節點的指定key的value print(val) # wang val = config.getint('section1', 'age') # 獲取節點section1的age屬性,屬性需要是int型,否則ValueError print(val) # 18 val = config.has_section('section1') # 檢查指定節點是否存在,返回True或False print(val) # True val = config.has_option('section1', 'age') # 檢查指定節點中是否存在某個key,返回True或False print(val) #True # 增刪改 config.add_section("node") # 添加一個節點,節點名為node, 此時添加的節點node尚未寫入文件 config.write(open('user.ini', "w")) # 將添加的節點node寫入配置文件 config.remove_section("node") # 刪除一個節點,節點名為node, 刪掉了內存中的節點node config.write(open("user.ini", "w")) # 將刪除節點node后的文件內容回寫到配置文件 config.set("section1", "k1", "v1") # 在已存在的節點中添加一個鍵值對k1 = v1 ,如果該節點不存在則報錯,如果key已經存在,則修改value # configparser.NoSectionError: No section: 'section' config.write(open("user.ini", "w"))