Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonの多次元リスト(ネストされたリスト)の作成と操作方法

リストはPythonで最も広く使われているデータ構造の一つです。カンマで区切られた複数の要素を格納できますが、リストの中にさらにリストを入れることも可能です。このような構造は「ネストされたリスト」または「多次元リスト」と呼ばれます。本記事では、多次元リストの作成方法、要素へのアクセス方法、そして拡張方法について詳しく解説します。

多次元リストの作成

多次元リストは、内包表記を使うことで簡潔に作成できます。以下の例では、ネストしたforループ(リスト内包表記)を用いて、3行4列の多次元リストを生成しています。

コード例

multlist = [[0 for columns in range(4)] for rows in range(3)]
print(multlist)

実行結果

上記のコードを実行すると、次の出力が得られます。

[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]

多次元リストの拡張

作成済みの多次元リストには、リストが持つメソッドを使って要素を追加できます。ここでは「append」と「extend」の2つのメソッドを使用します。両者の違いに注目してください。appendはリスト全体を1つの要素として追加するのに対し、extendは指定したリストの各要素を個別に追加します。

コード例

multlist = [["Mon","Tue","Wed"], [2, 4, 9], [1,1.5, 2]]
multlist.append(["Phy","Chem","Math"])
print(multlist)

multlist[0].extend(["Thu","Fri"])
print(multlist)

実行結果

上記のコードを実行すると、次の出力が得られます。

[['Mon', 'Tue', 'Wed'], [2, 4, 9], [1, 1.5, 2], ['Phy', 'Chem', 'Math']]
[['Mon', 'Tue', 'Wed', 'Thu', 'Fri'], [2, 4, 9], [1, 1.5, 2], ['Phy', 'Chem', 'Math']]

最初のappendでは、新しいサブリスト["Phy", "Chem", "Math"]が外側のリストに丸ごと追加されています。一方、extendではインデックス0のサブリストに対して「Thu」「Fri」が個別の要素として追加され、元のサブリストが拡張されていることがわかります。

多次元リストの要素へのアクセス

多次元リストの全要素にアクセスするには、ネストしたforループを使用します。外側のループで行(サブリスト)を順に取り出し、内側のループでその行の各列(要素)にアクセスします。

コード例

multlist = [[1,5,9], [2, 4, 9], [1,1, 2]]
for i in range(len(multlist)) :
    for j in range(len(multlist[i])) :
        print(multlist[i][j], end=" ")
    print()

実行結果

上記のコードを実行すると、次のように各行が1行ずつ表示されます。

1 5 9
2 4 9
1 1 2

まとめ

Pythonの多次元リストは、リスト内包表記で簡単に作成でき、appendやextendメソッドで柔軟に拡張できます。また、ネストしたforループを使えば、行と列を意識しながらすべての要素へ効率的にアクセス可能です。これらの基本操作をマスターすれば、表形式データや行列のようなデータ構造も自在に扱えるようになります。

  1. Pythonでリストを定義する方法とは?基本の書き方を初心者向けに解説

    リスト(List)は、Pythonにおける基本的なシーケンス型データ構造の一つです。複数の要素を角括弧 [ ] で囲み、カンマで区切って表現します。各要素は文字列や数値など異なるデータ型が混在していても問題ありません。また、リストは順序付き(ordered)コレクションであるため、格納した要素の並び順は保持されます。個々の要素には、0から始まるインデックスを使ってアクセスできます。たとえば最初の要素はインデックス 0、2番目の要素は 1 で参照します。リストの定義例list1 = [physics, chemistry, 1997, 2000] list2 = [1, 2, 3, 4, 5]

  2. Pythonリスト入門:作成から操作、削除まで徹底解説

    このチュートリアルでは、Pythonのリスト(List)について学びます。リストの作成方法、要素へのアクセス、要素の追加・削除、リスト自体の削除など、基本的な操作を一つずつ丁寧に解説していきます。 Pythonでは、リストは角括弧 [] を使って構築し、各要素はカンマ , で区切って記述します。 Pythonのリストは、異なる型のオブジェクトを混在させて格納できるのが特徴です。すべて文字列である必要も、整数である必要もありません。例えば、以下のように複数の型が混ざったリストを作成できます。mixedTypesList = [a, True, 1, 1.0] リストの作成方法 リストは、角括弧