2016-11-09 16 views
0

私は、Python 2.7で次のエラーが、私はこれらの行の実行時に「解凍する0値以上のものを必要とする」取得:Pythonのタプルループ値エラー

for row, row2 in results, results2: 
    row = list(row) 
    row2 = list(row2) 
    row2[7] += row[7] 

を目的はvalue0と結果にvalue0を追加することです結果2では、結果1のresult1のresult1の値1に、psycopg2モジュールの "fetchall()"関数を使用します。

誰かが私を助けてくれますか?

どうもありがとう

答えて

0

私は私はあなたの質問を理解していますが、二組の最初の要素を持つ最初のタプルから最初の要素を追加したい場合、あなたはこのようにそれを簡単に行うことができますかわかりません。

>>> tup = [(1,1),(2,2),(3,3)] 
>>> tup1 = [(4,4),(5,5),(6,6)] 
>>> tup 
[(1, 1), (2, 2), (3, 3)] 
>>> tup1 
[(4, 4), (5, 5), (6, 6)] 
>>> x1 = [x[0] for x in tup] 
>>> x2 = [x[0] for x in tup1] 
>>> x1 
[1, 2, 3] 
>>> x2 
[4, 5, 6] 
>>> list(zip(x1,x2)) #if you want to create another tuple 
[(1, 4), (2, 5), (3, 6)] 
>>> x1.extend(x2) #if you want to make a list 
>>> x1 
[1, 2, 3, 4, 5, 6] 

この場合、タプルの長さは関係ありません。

0

私はこの仕事をするためにマップやジッパーを使用します。

from operator import add 

list1 = [(1,2), (3,4), (5,6)] 
list2 = [(7,8), (9,10), (11,12)] 
list3 = [map(add, row1, row2) for row1 row2 in zip(list1, list2)]