x=[1,2,5] y=[2,3,9] どうすれば結果 22 を取得できますか?
私のコードには型エラーがあります。
sum
組み込み関数が必要だと思います。
>>> x = [1,2,5]
>>> y = [2,3,9]
>>> sum(x+y)
22
これは次と同じです。
sum(x) + sum(y)
または itertools が好きなら:
sum(itertools.chain(x,y))
後者の 2 つはより効率的です。
sum
iterable を取り、そのすべての要素を合計します。+
リストの連結を扱う場合、次のようになります。
x+y
リストを提供します:
[1,2,5,2,3,9]
これは反復可能であるため、 の完全な候補ですsum
。
リストがたくさんある場合は、これをさらに面白くすることができます。
>>> lists = [x,y]
>>> sum(sum(lst) for lst in lists)
22
この最後の形式は、任意の数のリストに自明にスケールアップできるのでlists
便利です。合計する準備ができるまでそれらをリストに追加し続け、そこにその1ライナーをポップすれば完了です。
もちろん、itertools でも同じことができると思います。
sum(itertools.chain.from_iterable(lists))
ご覧のとおり、かなりの数のオプションを使用できます (そして、そこから学ぶこともできます! :)。
>>> list1 = [1,2,5]
>>> list2 = [2,3,9]
>>> zip_list = [(x + y) for x, y in zip(list1, list2)]
>> zip_list
[3, 5, 14]
>>> sum(zip_list)
22
sm=0
for v in x+y:
sm=sm+v