python用Configobj模塊讀取配置文件
一、介紹
我們在項(xiàng)目的開發(fā)過程中應(yīng)該會遇到這樣的問題:我們的項(xiàng)目讀取某個(gè)配置文件,然后才能按照配置的信息正常運(yùn)行服務(wù),當(dāng)我們需要對修改服務(wù)的某些信息時(shí),可以直接修改這個(gè)配置文件,重啟服務(wù)即可,不用再去打開項(xiàng)目代碼進(jìn)行修改,這樣方便了我們后期運(yùn)維人員的工作。
讀取配置文件信息,修改配置文件,我們可以使用Configobj和ConfigParser模塊,個(gè)人推薦使用Configobj模塊,因?yàn)镃onfigobj相比于ConfigParser,優(yōu)勢在于Configobj模塊的使用更加清晰簡單(其實(shí)是我看到ConfigParser模塊好像復(fù)雜一點(diǎn),自己選了個(gè)簡單點(diǎn)的模塊而已,哈哈哈哈哈)。
pip install configobj
configobj的簡單之處就在于,它是以字典的形式來讀取/修改配置文件,就跟操作字典一樣,很簡單,下面看看例子就知道了。
二、configobj的使用
1、test.cfg配置文件
[server] name = zbj port = 9000 [home] # 注釋 area = huizhou
2、讀取配置文件信息
from configobj import ConfigObj
# 實(shí)例化一個(gè)Configobj對象,給ConfigObj一個(gè)配置文件的路徑,然后通過字典來訪問成員,子段也是一個(gè)字典
cfg_path = "./test.cfg"
config = ConfigObj(cfg_path, encoding='UTF-8')
# 讀配置文件
print(config['server']) # {'name': 'zbj', 'port': '9000'}
print(config['server']['name']) # zbj
3、修改配置文件
from configobj import ConfigObj cfg_path = "./test.cfg" config = ConfigObj(cfg_path, encoding='UTF-8') config['server']['name'] = "clj" # 修改完記得write寫入配置文件 config.write()

4、給配置文件添加新項(xiàng)
from configobj import ConfigObj
cfg_path = "./test.cfg"
config = ConfigObj(cfg_path, encoding='UTF-8')
config['school'] = {}
config['school']['class'] = "three"
# 只要進(jìn)行了修改(包括新增刪除等)的操作,記得write修改
config.write()

5、刪除配置文件中的某個(gè)項(xiàng)
from configobj import ConfigObj cfg_path = "./test.cfg" config = ConfigObj(cfg_path, encoding='UTF-8') del config['school'] del config['server']['port'] config.write()

6、將配置文件寫入到不同的文件
from configobj import ConfigObj cfg_path = "./test.cfg" config = ConfigObj(cfg_path, encoding='UTF-8') config.filename = "./test.ini" config.write() # 此時(shí)會新建一個(gè)test.ini文件,然后會將test.cfg的內(nèi)容寫入到test.ini文件

7、創(chuàng)建新的配置文件
from configobj import ConfigObj
# 實(shí)例化一個(gè)ConfigObj對象
config = ConfigObj()
# filename指定新創(chuàng)建的文件路徑和名稱
config.filename = './my_cfg.ini'
# 寫入配置信息
config['people'] = {}
config['people']['name'] = 'zzbj'
config['people']['age'] = '18'
config.write()

以上就是python用Configobj模塊讀取配置文件的詳細(xì)內(nèi)容,更多關(guān)于python Configobj模塊的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python cookbook(數(shù)據(jù)結(jié)構(gòu)與算法)篩選及提取序列中元素的方法
這篇文章主要介紹了Python cookbook(數(shù)據(jù)結(jié)構(gòu)與算法)篩選及提取序列中元素的方法,涉及Python列表推導(dǎo)式、生成器表達(dá)式及filter()函數(shù)相關(guān)使用技巧,需要的朋友可以參考下2018-03-03
Python新手如何進(jìn)行閉包時(shí)綁定變量操作
在本篇文章里小編給大家分享的是關(guān)于Python新閉包時(shí)綁定變量實(shí)例,有興趣的朋友們可以參考下。2020-05-05
python利用urllib和urllib2訪問http的GET/POST詳解
urllib模塊提供的上層接口,使我們可以像讀取本地文件一樣讀取www和ftp上的數(shù)據(jù)。下面這篇文章主要給大家介紹了關(guān)于python如何利用urllib和urllib2訪問http的GET/POST的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。2017-09-09
python tkinter實(shí)現(xiàn)連連看游戲
這篇文章主要介紹了python tkinter實(shí)現(xiàn)連連看游戲的示例,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-11-11

