一、ConfigParser模塊簡介
假設有如下配置文件,需要在Pyhton程序中讀取
如何讀取呢
方法一:
cp = configparser.ConfigParser()
cp.read("conf.ini")
print(cp.sections())
print(cp.options("db"))
print(cp.get("db","db_user"))
運行結果:
['db'] ['db_port', 'db_user', 'db_host', 'db_pass'] root
方法二:
import configparser cp = configparser.ConfigParser(allow_no_value=True) cp.read("conf.ini") data = cp.items("db") print(data)
運行結果:
[('db_port', '3306'), ('db_user', 'root'), ('db_host', '127.0.0.1'), ('db_pass', '123456789')]
二、ConfigParser模塊的常用方法
read(filename) 直接讀取ini文件內容 sections() 得到所有的section,並以列表的形式返回 options(section) 得到該section的所有option items(section) 得到該section的所有鍵值對 get(section,option) 得到section中option的值,返回為string類型 getint(section,option) 得到section中option的值,返回為int類型,還有相應的getboolean()和getfloat() 函數
寫入配置文件
三、特殊情況
如果有以下配置文件
hosts.txt
[IPS] 192.168.1.1 192.168.1.2 192.168.1.3 192.168.1.4
這種配置文件,每一個section里面,並不是健值對的形式,此時再調用第一種方法讀取便會報出如下錯誤:
ConfigParser.ParsingError: File contains parsing errors: hosts.txt
應該換第二種方法:
運行結果:
[('192.168.1.1', ''), ('192.168.1.2', ''), ('192.168.1.3', ''), ('192.168.1.4', '')]