假设我有一本字典:
d={'a-b':[1,2,3],'c-d':[4,5,6]}
我想把钥匙分开 'a-b' 分为两个键作为 'a' 'b' ,并保持两个等的值相同。。。
'a-b'
'a'
'b'
{'a': [1, 2, 3], 'b': [1, 2, 3], 'c': [4, 5, 6], 'd': [4, 5, 6]}
我知道我能做到(感谢@Netwave):
d={'a-b':[1,2,3],'c-d':[4,5,6]} newd={} for k,v in d.items(): x,y=k.split('-') newd[x]=v newd[y]=v print(newd) #{'a': [1, 2, 3], 'b': [1, 2, 3], 'c': [4, 5, 6], 'd': [4, 5, 6]}
但我不认为这是有效的,
只用 split
split
for k,v in d.items(): x, y = k.split("-") newd[x] = v newd[y] = v
或反复浏览:
for k,v in d.items(): for new_k in k.split("-") newd[new_k] = v
作为一种口述理解:
{new_k : v for k,v in d.items() for new_k in k.split("-")}