1. ホーム
  2. リスト

[解決済み】2つのリストを連結する - '+=' と extend() の違い)

2022-03-29 12:47:58

質問

Pythonでリストを連結する方法は、実は2つ(もっとあるかも)あるのを見たことがあります。 ひとつは extend() メソッドを使う方法です。

a = [1, 2]
b = [2, 3]
b.extend(a)

もう一つはプラス(+)演算子を使うことです。

b += a

さて、どうでしょう。この2つのオプションのどちらがリスト連結を行うための「Pythonic」な方法なのか、そしてこの2つの間に違いはあるのか(Pythonの公式チュートリアルを調べましたが、このトピックについて何も見つかりませんでした)。

どのように解決するのですか?

バイトコードレベルでの唯一の違いは .extend の方法は、関数呼び出しを伴うので、Pythonでは INPLACE_ADD .

この操作を何十億回も行うのでなければ、気にする必要はないでしょう。しかし、ボトルネックは他の場所にある可能性があります。