标准库ConfigParser模块
用于生成和修改常见配置文档,当前模块的名称在 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
17
18
19
20
21
|
import configparser #in Python 2.x 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
|
>>> 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[ 'Host Port' ]
'50022' >>> for key in config[ 'bitbucket.org' ]: print (key)
... user compressionlevel serveraliveinterval compression forwardx11 >>> 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
39
|
[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")) |