我有这段代码:
while i<len(line):
if re.findall(pattern, line[i]):
k,v = line[i].split('=')
print k
token = dict(k=v)
print token
break
我得到的结果是:
ptk
{'k': 'ptk_first'}
如何使这几行代码更好,字典看起来像这样:
{'ptk': 'ptk_first'}
答案 0 :(得分:2)
for line in lines:
if re.match(pattern, line):
k,v = line.split('=')
token = {k:v}
print token
答案 1 :(得分:2)
这样的事情:
lines="""\
key1=data on the rest of line 1
key2=data on the rest of line 2
key3=data on line 3"""
d={}
for line in lines.splitlines():
k,v=line.split('=')
d[k]=v
print d
答案 2 :(得分:1)
In [112]: line="ptk=ptk_first"
In [113]: dict([line.split("=")])
Out[113]: {'ptk': 'ptk_first'}
代码:
for line in lines:
if re.findall(pattern, line):
token = dict([line.split("=")])
print token
答案 3 :(得分:1)
使用正则表达式,你可以试试这个:
>>> import re
>>> lines="""
... ptk=ptk_first
... ptk1=ptk_second
... """
>>> dict(re.findall('(\w+)=(\w+)',lines,re.M))
{'ptk1': 'ptk_second', 'ptk': 'ptk_first'}