ConfigParser 讀寫配置檔案

2022-08-26 03:36:12 字數 3379 閱讀 2772

一、ini:

1..ini 檔案是initialization file的縮寫,即初始化檔案,是windows的系統配置檔案所採用的儲存格式

2.ini檔案建立方法:

(1)先建立乙個記事本檔案。

(2)工具 - 資料夾選項 - 檢視 - 去掉「隱藏已知檔案的副檔名」前面的√。這樣一來,你建立的那個記事本的副檔名就顯示出來了「*.txt」。然後,你把這個.txt副檔名更改為.ini

3.ini檔案的格式:

(1)節:section

節用方括號括起來,單獨佔一行,例如:

[section]

(2)鍵:key

鍵(key)又名屬性(property),單獨佔一行用等號連線鍵名和鍵值,例如:

name=value

(3)注釋:comment

注釋使用英文分號(;)開頭,單獨佔一行。在分號後面的文字,直到該行結尾都全部為注釋,例如:

; comment text

二、configparser

讀寫配置檔案configparser模組是python自帶的讀取配置檔案的模組.通過他可以方便的讀取配置檔案。

python的configparser module中定義了3個類對ini檔案進行操作。分別是rawconfigparser、configparser、safeconfigparser。rawcnfigparser是最基礎的ini檔案讀取類,configparser、safeconfigparser支援對%(value)s變數的解析。

1.讀取配置檔案

-read(filename)直接讀取ini檔案內容

-sections()得到所有的section,並以列表的形式返回

-options(section)得到該section的所有option(選項)

-items(section)得到該section的所有鍵值對

-get(section,option)得到section中option的值,返回為string型別

-getint(section,option)得到section中option的值,返回為int型別

2.寫入配置檔案

-add_section(section)新增乙個新的section

-set( section, option, value)對section中的option進行設定

-remove_section(section)刪除某個 section

-remove_option(section, option)刪除某個 section 下的 option

需要呼叫write將內容寫回到配置檔案。

3.測試**

(1)配置檔案(test.cfg

[sec_a]

a_key1 = 20  

a_key2 = 10  

[sec_b]

b_key1 = 121  

b_key2 = b_value2  

b_key3 = $r  

b_key4 = 127.0.0.1  

(2)測試檔案(test.py):

#生成config物件

conf = configparser.configparser()  

#用config物件讀取配置檔案

conf.read("test.cfg")  

#以列表形式返回所有的section

sections = conf.sections()  

print 'sections:', sections         #sections: ['sec_b', 'sec_a']  

#得到指定section的所有option

options = conf.options("sec_a")  

print 'options:', options           #options: ['a_key1', 'a_key2']  

#得到指定section的所有鍵值對

kvs = conf.items("sec_a")    

print 'sec_a:', kvs                 #sec_a: [('a_key1', '20'), ('a_key2', '10')]  

#指定section,option讀取值

str_val = conf.get("sec_a", "a_key1")  

int_val = conf.getint("sec_a", "a_key2")  

print "value for sec_a's a_key1:", str_val       #value for sec_a's a_key1: 20  

print "value for sec_a's a_key2:", int_val       #value for sec_a's a_key2: 10  

#寫配置檔案

#更新指定section,option的值

conf.set("sec_b", "b_key3", "new-$r")  

#寫入指定section增加新option和值

conf.set("sec_b", "b_newkey", "new-value")  

#增加新的section

conf.add_section('a_new_section')  

conf.set('a_new_section', 'new_key', 'new_value')  

#寫回配置檔案

conf.write(open("test.cfg", "w"))  

configparser模組讀寫ini配置檔案

這篇部落格,介紹下python中利用configparser模組讀寫配置檔案的方法,僅供參考。一 讀取檔案 configparser模組支援讀取.conf和.ini等型別的檔案,那麼首先在資料夾新建乙個.ini檔案,寫入一些資訊,如下圖 示例 如下 1 coding utf 8 2 import c...

configparser輕鬆管理 ini配置檔案

配置檔案在專案中常用於資訊管理,例如資料庫資訊 伺服器資訊等,也可以用於環境切換。配置檔案主要有.ini和.conf兩種型別。這裡我們使用python的第三方庫模組configparser實現.ini配置檔案管理。首先,準備好配置檔案,檔名為conf.ini,檔案內容如下 mysql host 12...

configparser讀寫ini配置檔案

讀取配置檔案 寫入配置檔案 判斷某元素是否存在 has option has section 要讀寫的ini檔案 sec a a key1 20 a key2 10 sec b b key1 121 b key2 b value2 b key3 r b key4 127.0.0.1 import c...