我是 python 新手。
我有一个配置文件,如下所示,顺序相同。我需要从配置文件中检索键值对,并将在我的脚本中使用这些值
# Name and details
(
{ group => 'abc',
host => 'pqr.com',
user => 'anonymous',
src => '/var/tmp',
dest => '/tmp',
},
{ group => 'abc',
host =>'pqr.com',
user => 'anonymous',
src => '/tmp'
dest => '/var/tmp'
},
{ group => 'pqr',
host =>'abc.com',
user => 'xyz',
src => '/home/pp',
dest => '/var/tmp',
},
{ group => 'xyz',
host =>'p.com',
user => 'x',
src => '/home/',
dest => '/tmp',
}
)
每个
{
}
被认为是一个块.. Group
, user
,host
是唯一的并且是重复的。我必须阅读和解析配置文件并显示键值对。请帮助。
Key : group,Value : 'abc'(say)
key : host ,Value :'pqr.com'
Key : user, Value :'anonymous'
Key : src,Value :'/var/tmp',
key : dest,Value : '/tmp'
谢谢,
我已经编写了代码,它以 cfg 文件(如上所示)作为输入来显示键和值。
idx = 0
dictList = []
while True:
try:
start = config.index("{", idx)
end = config.index("}", start+1)
slice = config[start+1:end-1]
sliceList = [s.strip() for s in slice.split(",") if s.strip()]
dd = {}
for item in sliceList:
key, value = [s.strip() for s in item.split("=>")]
print key, value
显示键、值时输出
key 'value'
group 'abc'
host 'pqr.com'
user 'ananymous'
src '/use/tmp
现在的问题是,如何显示一个键对应的值。例如:打印组- 应该显示 abc 打印主机应该显示 pqr.com,等等。