Pythonでリストに別のリストを追加(結合)する方法を徹底解説
Pythonでは、既存のリストに別のリストを追加・結合する方法がいくつかあります。ここでは代表的な4つの手法を、サンプルコードと実行結果とともにわかりやすく解説します。
+演算子(連結演算子)を使う方法
最もシンプルなのが「+」演算子による連結です。2つのリストをつなげた新しいリストが生成され、元のリストは変更されません。
例
l1 = [1, 2, 3]
l2 = [2, 3, 4]
l3 = l1 + l2
print('新しいリスト:', l3)
出力
新しいリスト: [1, 2, 3, 2, 3, 4]
append()メソッドを使う方法
listオブジェクトのappend()メソッドは、引数で渡したオブジェクトを1つの要素としてリストの末尾に追加します。リストを渡すとネスト(入れ子)構造になる点に注意してください。
例
l1 = [1, 2, 3]
l2 = [3, 4, 5]
l1.append(l2)
print('append後のリスト:', l1)
出力
append後のリスト: [1, 2, 3, [3, 4, 5]]
extend()メソッドを使う方法
extend()メソッドは、引数に渡したリストの各要素を個別に展開して、元のリストの末尾へ順に追加します。「+」演算子と似た結果になりますが、こちらは元のリスト自体が更新される点が異なります。
例
l1 = [1, 2, 3]
l2 = [3, 4, 5]
l1.extend(l2)
print('extend後のリスト:', l1)
出力
extend後のリスト: [1, 2, 3, 3, 4, 5]
重複のないリストを取得する方法
まず「+」演算子で2つのリストを連結し、次にset()関数で重複を排除、最後にlist()関数で再びリストに変換します。なお、set()は順序を保証しないため、要素の並び順が変わる場合がある点にも留意してください。
例
l1 = [1, 2, 3]
l2 = [3, 4, 5]
l = list(set(l1 + l2))
print('重複なしのリスト:', l)
出力
重複なしのリスト: [1, 2, 3, 4, 5]
まとめ
用途に応じた使い分けがポイントです。
・新しいリストを作りたい → 「+」演算子
・リストをそのまま入れ子にしたい → append()
・要素を展開して結合したい → extend()
・重複を除きたい → set()を活用
それぞれの特徴を理解して、目的に合った方法を選びましょう。
-
Pythonでリストのリストからフラットなリストを作成する方法
フラットリストとは 各要素がそれ自体リストになっているようなリストオブジェクトから、すべてのサブリストの要素を取り出して1つのリストにまとめたものをフラットリストと呼びます。 例えば、次のようなネストされた(入れ子になった)リストがあるとします。 nested_list = [[1, 2, 3], [4, 5], [6, 7, 8, 9]] これをフラット化すると、以下のような1次元のリストになります。 flat_list = [1, 2, 3, 4, 5, 6, 7, 8, 9] ここでは、Pythonでリストのリストをフラット化する代表的な方法をいくつか紹介します。 方法1:リスト内包表
-
Pythonリスト入門:作成から操作、削除まで徹底解説
このチュートリアルでは、Pythonのリスト(List)について学びます。リストの作成方法、要素へのアクセス、要素の追加・削除、リスト自体の削除など、基本的な操作を一つずつ丁寧に解説していきます。 Pythonでは、リストは角括弧 [] を使って構築し、各要素はカンマ , で区切って記述します。 Pythonのリストは、異なる型のオブジェクトを混在させて格納できるのが特徴です。すべて文字列である必要も、整数である必要もありません。例えば、以下のように複数の型が混ざったリストを作成できます。mixedTypesList = [a, True, 1, 1.0] リストの作成方法 リストは、角括弧