2013-07-31 27 views
2

我在寫下面的代碼創建一個字典:需要超過1點的值來解壓

for a,b,c in foo: 
    d=float(a or 0)-float(b or 0) 
    bar[c]=d 
    print bar 

這工作,但給我紮了個遍。 但是,當我嘗試在for循環外使用bar時,出現以下錯誤;

ValueError: need more than 1 value to unpack 
+1

在'foo'中,你有一個'tuple',它只包含一個值而不是三個。 –

+2

分享您分配foo的代碼 – scohe001

+3

同時分享實際引發錯誤的代碼以及錯誤所帶來的追溯。調試與我們看不到的代碼有關的部分錯誤信息非常困難。 – abarnert

回答

2

該錯誤消息表示您試圖在需要多個值的元組中存儲一個值。

>>>(x,y,z) = [5] 
ValueError: need more than 1 value to unpack 

你應該在你的代碼中的某個地方查找分配給元組的地方。看來foo是元組列表。也許你試圖給某個元素賦值foo

相關問題