這篇部落格,介紹下python中利用configparser模組讀寫配置檔案的方法,僅供參考。。。
一、讀取檔案
configparser模組支援讀取.conf和.ini等型別的檔案,那麼首先在資料夾新建乙個.ini檔案,寫入一些資訊,如下圖:
示例**如下:
1 # coding=utf-8執行指令碼,結果如下所示:2 import configparser
3 import os
4 5 os.chdir("e:\\automation\\ui\\testcase")
6 cf = configparser.configparser()
7 8 # read(filename) 讀檔案內容
9 filename = cf.read("test.ini")
10 print(filename)
11 12 # sections() 得到所有的section,以列表形式返回
13 sec = cf.sections()
14 print(sec)
15 16 # options(section) 得到section下的所有option
17 opt = cf.options("mysql")
18 print(opt)
19 20 # items 得到section的所有鍵值對
21 value = cf.items("driver")
22 print(value)
23 24 # get(section,option) 得到section中的option值,返回string/int型別的結果
25 mysql_host = cf.get("mysql","host")
26 mysql_password = cf.getint("mysql","password")
27 print(mysql_host,mysql_password)
1 ['test.ini']指令碼解析:cf.read(filename):讀取檔案內容2 ['driver', 'mysql']
3 ['host', 'port', 'username', 'password']
4 [('path', 'e:\\automation\\ui\\testcase\\browser\\chromedriver.exe'), ('url', '')]
5 127.0.0.1 123456
cf.sections():得到所有的section,並且以列表形式返回
cf.options(section):得到section下所有的option
cf.items(option):得到該section所有的鍵值對
cf.get(section,option):得到section中option的值,返回string型別的結果
cf.getint(section,option):得到section中option的值,返回int型別的結果
二、寫入檔案
如果需要在配置檔案寫入內容,需要os函式幫忙,示例**如下:
1 # coding=utf-8執行指令碼,結果如下所示:2 import configparser
3 import os
4 5 os.chdir("e:\\automation\\ui\\testcase")
6 cf = configparser.configparser()
7 8 # 往配置檔案寫入內容
9 10 # add section 新增section項
11 # set(section,option,value) 給section項中寫入鍵值對
12 cf.add_section("mq")
13 cf.set("mq", "user", "laozhang")
14 cf.add_section("kafka")
15 cf.set("kafka", "user", "xiaozhang")
16
17 # write to file
18 with open("test1.ini","w+") as f:
19 cf.write(f)
指令碼解析:
cf.write(filename):將configparser物件寫入.ini型別的檔案
add_section():新增乙個新的section
add_set(section,option,value):對section中的option資訊進行寫入
三、修改檔案
還可以利用os函式對檔案進行修改,示例**如下:
1 # coding=utf-8執行指令碼,結果如下所示:2 import configparser
3 import os
4 5 os.chdir("e:\\automation\\ui\\testcase")
6 cf = configparser.configparser()
7 8 # 修改配置檔案的內容
9 10 # remove_section(section) 刪除某個section的數值
11 # remove_option(section,option) 刪除某個section下的option的數值
12 cf.read("test1.ini")
13 cf.remove_option("kafka","user")
14 cf.remove_section("mq")
15 16 # write to file
17 with open("test1.ini","w+") as f:
18 cf.write(f)
指令碼解析:
cf.read(filename):讀取檔案(這裡需要注意的是:一定要先讀取檔案,再進行修改)
cf.remove_section(section):刪除檔案中的某個section的數值
cf.remove_option(section,option):刪除檔案中某個section下的option的數值
ConfigParser模組教程
configparser 模組用於操作配置檔案 注 parser漢譯為 解析 之意。配置檔案的格式與windows ini檔案類似,可以包含乙個或多個節 section 每個節可以有多個引數 鍵 值 book title configparser模組教程 time 2012 09 20 22 04 ...
ConfigParser模組教程
目錄 configparser 模組用於操作配置檔案 注 parser漢譯為 解析 之意。配置檔案的格式與windows ini檔案類似,可以包含乙個或多個節 section 每個節可以有多個引數 鍵 值 plain view plain copy book title configparser模組...
configparser模組總結
configparser模組使用來讀取寫入配置檔案的,其配置檔案的結構為 section1 key1 value1 key2 value2 section2 key1 value1 key2 value2其中 包圍的部分為section,是區分各個配置的標誌,下面的值是以key value的形式存在...