今天來總結一下configparser類的基本用法
configparser是python 提供用來處理配置文件類,今天來總結一下configparser類的基本用法
我們先來看一個常見的基礎的配置文件
[DEFAULT]
serveraliveinterval = 45
compression = yes
compressionlevel = 9
[bitbucket]
user = kk
[topsecrect]
port = 22
可以看到配置文件的基本格式是由多個section組成,其中包含一個[DEFAULT]的section,用來進行默認配置,每個section下面用key 和 value 的值對組成
那么如何用configparser類來生成這樣一個配置文件呢
我們可以用類似python字典的方式來操作configparser類來生成配置文件
import configparser
config = configparser.ConfigParser()
config['DEFAULT'] = {'serveraliveinterval' : '4',
'compression' : 'yes',
'compressionlevel' : '9'}
config['bitbucket'] = {}
config['bitbucket']['user'] = 'kk'
config['topsecrect'] = {}
topsecrect = config['topsecrect']
topsecrect['port'] = '22'
with open('example.ini', 'w') as configfile:
config.write(configfile)
下面我們來試試用configparser讀取配置文件
import configparser
config = configparser.ConfigParser()
config.read('example.ini')
for key in config['DEFAULT']:
print(key)
可以看到操作configparser的方法和python的字典是很類似的
configparser支持的數據類型
一般情況下,configpaser類是無法識別配置文件中的value的數據類型的,它總是以字符串的形式來存儲這些類型,所以當涉及到int
float
等類型的時候就需要我們自己對它進行轉換
configparser 為我們提供了getboolean() getint() getfloat()
方法用來對讀對應類型的配置
import configparser
config = configparser.ConfigParser()
config.read('example.ini')
port = config['topsecrect'].getint('port')
print(port)
compression = config.getboolean('DEFAULT', 'compression')
print(compression)
其中getboolean方法可以識別 'yes'/'no', 'on'/'off', 'true'/'false' and '1'/'0'
等數據并轉換為布爾值