演算子「+」と extend メソッド の違い
- 演算子「+」は2つのリストを結合し、新しいリストを返します。元のリストは変更されません。
- extend メソッドは 対象リストの末尾にリストを追加挿入します。
# 演算子「+」
新しいリスト = リスト1 + リスト2
# extendメソッド
リスト1.extend(リスト2)
演算子「+」の使用方法
新しいリスト = リスト1 + リスト2
- リスト1 と リスト2 の内容は変更されません。
- リスト1 または リスト2 が None の場合、エラーが発生します。(空リストはOK)
サンプルプログラム
次のサンプルコードは list1 と list2 を結合した newList を作成し、結果を表示しています。# リストを2つ用意
list1 = [1, 2, 3]
list2 = [4, 5, 6]
# list1 と list2 を結合し、新しいリストを作る
newList = list1 + list2
# 結果 = [1, 2, 3, 4, 5, 6]
print(f'newList = {newList}')
# list1 と list2 は変化なし
# list1 = [1, 2, 3]
# list2 = [4, 5, 6]
print(f'list1 = {list1}')
print(f'list2 = {list2}')

extendメソッド の使用方法
リスト1.extend(リスト2)
- リスト1 の末尾に リスト2 が追加されます。
- リスト2 は変更されません。
- リスト1 または リスト2 が None の場合、エラーが発生します。(空リストはOK)
サンプルプログラム
次のサンプルコードは extendメソッドを使用して list1 の最後に list2 を結合しています。# リストを2つ用意
list1 = [1, 2, 3]
list2 = [4, 5, 6]
# list1 の末尾に list2 を追加
list1.extend(list2)
# 結果 = [1, 2, 3, 4, 5, 6]
print(f'list1 = {list1}')
# list2 は変化なし
# list2 = [4, 5, 6]
print(f'list2 = {list2}')

参考資料
検証環境
- Python 3.11.0 (main, Oct 24 2022, 18:26:48) [MSC v.1933 64 bit (AMD64)] on win32
- Microsoft Windows 10 Enterprise Version 22H2 OS Build 19045.2251 Experience: Windows Feature Experience Pack 120.2212.4180.0