多次元リストの作成と要素の取得

リストでは要素として別のリストを代入することができます。このようなリストの中にリストが入ったものを多次元リスト(または多重リスト)と呼びます。ここでは多次元リストの作成方法と要素を取得する方法について解説します。

(Last modified: )

多次元リストを作成する

多次元リストを作成する手順は通常のリストと変わりがありません。要素に対して値としてリストを指定するだけです。

[要素1, 要素2, ...]

例えば 1 番目の要素として ["Yamada", 25]、 2 番目の要素として ["Suzuki", 38]、 3 番目の要素として ["Tanaka", 28] を持つリストは次のように記述します。

[["Yamada", 25], ["Suzuki", 38], ["Tanaka", 28]]

このようにリストの中にリストが含まているものを多次元リストまたは多重リストなどと呼びます。

多次元リストから要素を取り出す

リストの要素には別のリストが代入されているので、インデックスを指定して要素を取得するとそれぞれの要素に代入されているリストを取得することになります。

stafflist = [["Yamada", 25], ["Suzuki", 38], ["Tanaka", 28]]

print(stafflist[0])
--> ["Yamada", 25]

print(stafflist[1])
--> ["Suzuki", 38]

print(stafflist[2])
--> ["Tanaka", 28]]

インデックスを指定して取り出したリストに含まれるそれぞれの要素はさらにインデックスを指定することで取得することができます。

リスト名[リストのインデックス][要素として代入されていたリストのインデックス]

具体的には次のように記述します。

stafflist = [["Yamada", 25], ["Suzuki", 38], ["Tanaka", 28]]

print(stafflist[0][0])
--> "Yamada"
print(stafflist[0][1])
--> 25

print(stafflist[1][0])
--> "Suzuki"
print(stafflist[1][1])
--> 38

print(stafflist[2][0])
--> "Tanaka"
print(stafflist[2][1])
--> 28

リストは配列のように使うことができますが。多次元リストは多次元配列のように使用することができます。

サンプルコード

次のサンプルを見てください。

stafflist = [["Yamada", 25], ["Suzuki", 38], ["Tanaka", 28]]

for p in [0, 1, 2]:
    for m in [0, 1]:
        print("[" + str(p) + "][" + str(m) + "] = ", end='')
        print(stafflist[p][m])

>> [0][0] = Yamada
>> [0][1] = 25
>> [1][0] = Suzuki
>> [1][1] = 38
>> [2][0] = Tanaka
>> [2][1] = 28

多次元リストから for 文を使って要素を順番に取り出して出力することができました。

-- --

多次元リストの作成方法と要素を取得する方法について解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。