Python3之configparser模塊


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"))

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM