用于生成和修改常见配置文档,当前模块的名称在 python 3.x 版本中变更为 configparser。
来看一个好多软件的常见文档格式如下
|
1
2
3
4
5
6
7
8
9
10
11
12
|
[DEFAULT]ServerAliveInterval = 45
Compression = yes
CompressionLevel = 9
ForwardX11 = yes
[bitbucket.org]User = hg
[topsecret.server.com]Port = 50022
ForwardX11 = no
|
如果想用python生成一个这样的文档怎么做呢?
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import configparser
config = configparser.ConfigParser()
config["DEFAULT"] = {'ServerAliveInterval': '45',
'Compression': 'yes',
'CompressionLevel': '9'}
config['bitbucket.org'] = {}
config['bitbucket.org']['User'] = 'hg'
config['topsecret.server.com'] = {}
topsecret = config['topsecret.server.com']
topsecret['Host Port'] = '50022' # mutates the parser
topsecret['ForwardX11'] = 'no' # same here
config['DEFAULT']['ForwardX11'] = 'yes'
with open('example.ini', 'w') as configfile:
config.write(configfile)
|
写完了还可以再读出来哈。
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
>>> import configparser
>>> config = configparser.ConfigParser()
>>> config.sections()[]>>> config.read('example.ini')
['example.ini']
>>> config.sections()['bitbucket.org', 'topsecret.server.com']
>>> 'bitbucket.org' in config
True>>> 'bytebong.com' in config
False>>> config['bitbucket.org']['User']
'hg'>>> config['DEFAULT']['Compression']
'yes'>>> topsecret = config['topsecret.server.com']
>>> topsecret['ForwardX11']
'no'>>> topsecret['Port']
'50022'>>> for key in config['bitbucket.org']: print(key)
...usercompressionlevelserveraliveintervalcompressionforwardx11>>> config['bitbucket.org']['ForwardX11']
'yes' |
configparser增删改查语法
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
[section1]k1 = v1
k2:v2 [section2]k1 = v1
import ConfigParser
config = ConfigParser.ConfigParser()
config.read('i.cfg')
# ########## 读 ###########secs = config.sections()#print secs#options = config.options('group2')#print options #item_list = config.items('group2')#print item_list #val = config.get('group1','key')#val = config.getint('group1','key') # ########## 改写 ###########sec = config.remove_section('group1')#config.write(open('i.cfg', "w")) #sec = config.has_section('wupeiqi')#sec = config.add_section('wupeiqi')#config.write(open('i.cfg', "w")) #config.set('group2','k1',11111)#config.write(open('i.cfg', "w")) #config.remove_option('group2','age')#config.write(open('i.cfg', "w")) |