2016-04-03 93 views
0

有兩個維度的名爲a的列表。 a[0]是一個包含1000個圖像的元組,而a[1]是它們標籤的元組。我試圖運行下面的代碼:根據第二維中的項目拆分兩個元組的列表

from collections import defaultdict 
images = defaultdict(list) 
for image, label in a: 
    images[label].append(image) 

for k,v in images.iteritems(): 
    print('Label {} has {} images'.format(k, len(v))) 

但我得到以下錯誤:

for image, label in a: 

ValueError: too many values to unpack 
+3

您可以使用'zip':'圖像,標籤以zip(* a):...' – falsetru

回答

4

嘗試改變第一回路:

for image, label in zip(*a): 

本文將結合相應的對從a[0]a[1],這樣你就可以循環它們。

+0

謝謝。它的工作原理沒有錯誤,但是在使用zip命令後想知道,它顯示了結果,然後進入睡眠並且工作非常緩慢。我必須退出Spyder並再次運行。 –

+0

第二個循環之後是否有更多的代碼?它可能不在您發佈的代碼中。 –

+0

不,通常我有這個問題,每當我使用zip命令。 –

相關問題