4

私はすでにこの問題を何度も抱えていました.2つのタプルの内容を一緒に追加するための良い解決策を見つけることができませんでした. する何か:

a = (1, 2)
b = (3, 4)
c = (a[0]+b[0], a[1]+b[1])

一度だけそれを行う構文を見たと思いますが、その方法を思い出せません。

4

3 に答える 3

3

これも機能します:

>>> a = (1,2)
>>> b = (3,4)
>>> c = map(sum, zip(a,b))
>>> c
[4, 6]

任意の数の数字を含む任意の数のリストで機能するはずです。

于 2012-05-21T17:28:13.460 に答える
1

一発ギャグ:

map(lambda x, y: x+ y, a, b)

これが最も効率的な方法だと思います。operator.addラムダ関数を回避するためにインポートすることもできます。私にとっては、よりクリーンなグローバル名前空間を好みます。

于 2012-05-21T17:28:11.227 に答える
0

ジェネレータ内包表記を使用すると、次のようになります。

a = (1, 2)
b = (3, 4)
result = [x + y for x, y in zip(a, b)]

[4、6]

于 2015-11-22T11:31:16.333 に答える