寫(xiě)一個(gè)程序的時(shí)候有些內(nèi)容需要?jiǎng)討B(tài)調(diào)整這些可以動(dòng)態(tài)改變的值,,可以放在一個(gè)單獨(dú)的配置文件中,這樣程序代碼不需要變化,,只需要調(diào)整配置文件中的值即可,。 Python ConfigParserConfigParser是一個(gè) Python 類(lèi),為 Python 程序?qū)崿F(xiàn)基本的配置語(yǔ)言,。 它提供類(lèi)似于 Microsoft Windows INI 文件的結(jié)構(gòu)
[DEFAULT]ServerAliveInterval = 45Compression = yesCompressionLevel = 9ForwardX11 = yes[bitbucket.org]User = hg[topsecret.server.com]Port = 50022ForwardX11 = no
import configparserconfig = configparser.ConfigParser()config.read('my.ini')DEFAULT = config['DEFAULT'] print(DEFAULT, )a = DEFAULT['ServerAliveInterval']print(a) 其實(shí)你可以理解為這樣的結(jié)構(gòu) config['DEFAULT']的值是一個(gè)字典,,代碼下面的配置信息
獲取所有的段卷面我們知道用中括號(hào)飯團(tuán)的一行為一個(gè)段[DEFAULT],如何獲取所有的這樣的段 sections = config.sections()
Sections: ['bitbucket.org', 'topsecret.server.com']
把這個(gè)段的修改修為 DEFAULT-1 就可以獲取所有的段名了
Sections: ['DEFAULT-1', 'bitbucket.org', 'topsecret.server.com'] 使用字典代碼ini文件從上面的結(jié)構(gòu)我們可以發(fā)現(xiàn)其實(shí)這個(gè)ini文件和字典結(jié)構(gòu)很類(lèi)似 可以使用read_dict來(lái)從字典中解析配置
config.read_dict(cfg_data) 通過(guò)程序添加新的配置項(xiàng)
可以看到新增加了一個(gè)段和配置項(xiàng)[NEW-CONFIG],注意里面的換行問(wèn)題 [DEFAULT]ServerAliveInterval = 45Compression = yesCompressionLevel = 9ForwardX11 = yes[bitbucket.org]User = hg[topsecret.server.com]Port = 50022ForwardX11 = no[NEW-CONFIG]host = localhostuser = user7passwd = s$cretdb = ydb ini文件中的一些技巧下面的配置文件,,目錄,,文件名 最后一個(gè)是完整的文件路徑 是人家兩個(gè)配置計(jì)算出來(lái)的 %(users_dir)s\%(name)s表示使用 users_dir和 name這兩個(gè)配置的值拼接起來(lái)的 請(qǐng)注意,,“ s”字符是語(yǔ)法的一部分,。 my.ini配置文件內(nèi)容
home_dir = config['info']['home_dir']print(home_dir)
|
|