python讀取配置文件


轉載:https://my.oschina.net/u/3041656/blog/793467

配置文件作為一種可讀性很好的格式,非常適用於存儲程序中的配置數據。在每個配置文件中,配置數據會被分組(比如"config"和”cmd“).每個分組在其中指定對應的各個變量值,,如下:

#定義congig分組

[congig]

platformName=Android

appPackage=com.remwe

appActivity=com.remove.SplashActivity

#定義cmd分組

[cmd]

viewPhone=adb devices

startServer=adb start-server

stopServer=adb kill-server

#定義log分組

[log]

log_error=true

基本的讀取操作:

1)-read(filename)   直接讀取文件內容

2)sections()     得到該section,並以列表的形式返回

3)options(section) 得到該section的所有option

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

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

6)-getint(section,option)  得到section中option的值,返回為int類型,還有相應的getboolean()和getfloat()函數

對配置文件進行操作前。我們需要進行以下兩個操作:

1、實例化ConfigParser對象

#實例化configParser對象

cf=config.ConfigParser()

2、讀取配置文件

#讀取config.ini文件

cf.read(config.ini)

然后進行配置文件的讀取操作

以get為例,實例代碼如下:

#定義方法,獲取config分組下指定name的值

def getConfigVValue(self,name):

    value=self.cf.get("config",name)

    return(value)

#定義方法,獲取cmd分組下指定name的值

def getCmdValue(self,name):

    value=self.cf.get("cmd",name)

    return(value)

通過get(section,option)方法,可以獲取指定分組下指定名稱的值,其他方法類似,可參照着嘗試

 

基本寫入操作:

1)-write(fp)將config對象寫入至某個.ini格式的文件

2)-add_section(section)添加一個新的section

3)-set(section,option,value) 對section中的option進行配置,需要調用write將內容寫入配置文件

4)-remove_section(section)刪除某個section

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

以set(section,option,value)為例,示例代碼:

#定義方法,修改config分組下指定name的值value

def setConfigValue(self,name,value):

    cfg=self.set("config",name,value)

    fp=open(r'config.ini','w')

   cfg.write(fp)

配置文件中的名字是不區分大小寫的,如下兩個是等價的:

#不區分大小寫,以下兩個鞥加,都獲取appActivity的值

self.cf.get("config",”appActivity“)

self.cf.get("config","APPACTIVITY")

在解析時,getboolean()方法查找任何可行的值,例如以下幾個都是等價的:

#以下卻不知都是等價的為ture

[log]

log_error=ture

log_error=TURE

log_error=1

log_error=yes


免責聲明!

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



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