试试这个:data = []
with open('names.dat') as database:
for line in database:
if line.strip(): # skip blank lines
data.append(
dict(i.split(":") for i in line.rstrip('\n').split(","))
)
如果您的文件是:
^{pr2}$
data将是:[{'name': 'name3', 'name2': 'name4', 'name3': 'name5'},
{'name': 'name3', 'name2': 'name4', 'name3': 'name5'},
{'name': 'name3', 'name2': 'name4', 'name3': 'name5'},
{'name': 'name3', 'name2': 'name4', 'name3': 'name5'}]
也许你想要一个dict的list,而不是dict的list:data = {}
with open('names.dat') as database:
for line in database:
if line.strip(): # skip blank lines
for k, v in (i.split(":") for i in line.rstrip('\n').split(",")):
data.setdefault(k, []).append(v)
结果:{'name': [ 'name2', 'name3', 'name2', 'name3', 'name2', 'name3', 'name2', 'name3'],
'name2': ['name4', 'name4', 'name4', 'name4'],
'name3': ['name5', 'name5', 'name5', 'name5']}