我想将一个字符串如'a = b,a = c,a = d,b = e'转换成列表的字典{'a':['b','c','d'],' b':Python 2.6中的['e']}.
我目前的解决方案是:
def merge(d1, d2):
for k, v in d2.items():
if k in d1:
if type(d1[k]) != type(list()):
d1[k] = list(d1[k])
d1[k].append(v)
else:
d1[k] = list(v)
return d1
record = 'a=b,a=c,a=d,b=e'
print reduce(merge, map(dict,[[x.split('=')] for x in record.split(',')]))
Run Code Online (Sandbox Code Playgroud)
我确信这是不必要的复杂.
更好的解决方案?