[英]Iterating through multiple values for one dict key in Python
這是我的python函數之一的摘錄:
d = {'ANIMAL' : ['CAT','DOG','FISH','HEDGEHOG']}
d_list = []
for key,value in d.iteritems():
temp = [key, value]
d_list.append(temp)
當我打印d_list
它當前給我:
>>>print d_list
[['ANIMAL', ['CAT', 'DOG', 'FISH', 'HEDGEHOG']]]
我該如何重寫該函數,以便為我提供:
>>>print d_list
[['ANIMAL', 'CAT'],['ANIMAL', 'DOG'],['ANIMAL', 'FISH'],['ANIMAL', 'HEDGEHOG']]
兩個嵌套循環可以輕松做到這一點-
d = {'ANIMAL' : ['CAT','DOG','FISH','HEDGEHOG']}
d_list = []
for key, values in d.iteritems():
for value in values:
d_list.append([key, value])
使用列表理解-
d_list = [[k,v] for k, values in d.iteritems() for v in values]
對於python 3.x,應將iteritems
更改為items
這就是我要做的。 我將直接遍歷鍵的值。
d = {'ANIMAL' : ['CAT','DOG','FISH','HEDGEHOG']}
d_list = []
for value in d['ANIMAL']:
temp = ['ANIMAL',value]
d_list.append(temp)
print (d_list)
結果:
[['ANIMAL', 'CAT'], ['ANIMAL', 'DOG'], ['ANIMAL', 'FISH'], ['ANIMAL', 'HEDGEHOG']]
您需要第二個循環:
d = {'ANIMAL' : ['CAT','DOG','FISH','HEDGEHOG']}
d_list = []
for key, values in d.iteritems():
for value in values:
temp_list=[key, value]
d_list.append(temp)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.