【Python】2次元リストの使い方

この記事では、Pythonの2次元リストの使い方について解説します。

2次元リストの作成方法や要素へのアクセス方法、操作方法、ループ処理などを学ぶことができます。

また、2次元リストの応用例として行列演算や画像処理についても紹介します。

目次から探す

2次元リストとは

2次元リストは、要素が複数のリストで構成されるデータ構造です。

リストの中にリストが入れ子になっており、行と列の2次元のグリッドのような形をしています。

2次元リストは、表や行列などのデータを表現するのに便利です。

2次元リストの作成方法

2次元リストを作成するには、リストの中にリストを入れる形で要素を指定します。

以下は、3行3列の2次元リストを作成する例です。

matrix = [[1, 2, 3],
          [4, 5, 6],
          [7, 8, 9]]

このように、外側のリストに行ごとのリストを入れることで、2次元リストを作成することができます。

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

2次元リストの要素にアクセスするには、行番号と列番号を指定します。

行番号と列番号は0から始まるため、要素にアクセスする際には注意が必要です。

matrix = [[1, 2, 3],
          [4, 5, 6],
          [7, 8, 9]]

# 2次元リストの要素にアクセスする
print(matrix[0][0])  # 1
print(matrix[1][2])  # 6
print(matrix[2][1])  # 8

上記の例では、matrix[0][0]は1行1列目の要素、matrix[1][2]は2行3列目の要素、matrix[2][1]は3行2列目の要素を取得しています。

2次元リストの操作

要素の追加

2次元リストに要素を追加するには、append()メソッドを使用します。

以下は、2次元リストに新しい行を追加する例です。

matrix = [[1, 2, 3],
          [4, 5, 6]]

# 新しい行を追加する
matrix.append([7, 8, 9])

print(matrix)
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

要素の削除

2次元リストから要素を削除するには、del文を使用します。

以下は、2次元リストから特定の要素を削除する例です。

matrix = [[1, 2, 3],
          [4, 5, 6],
          [7, 8, 9]]

# 特定の要素を削除する
del matrix[1][1]

print(matrix)
[[1, 2, 3], [4, 6], [7, 8, 9]]

要素の変更

2次元リストの要素を変更するには、代入演算子を使用します。

以下は、2次元リストの特定の要素を変更する例です。

matrix = [[1, 2, 3],
          [4, 5, 6],
          [7, 8, 9]]

# 特定の要素を変更する
matrix[1][1] = 10

print(matrix)
[[1, 2, 3], [4, 10, 6], [7, 8, 9]]

2次元リストのループ処理

2次元リストの要素をループ処理するには、2重のforループを使用します。

以下は、2次元リストの要素を全て表示する例です。

matrix = [[1, 2, 3],
          [4, 5, 6],
          [7, 8, 9]]

# 2次元リストの要素をループ処理する
for row in matrix:
    for element in row:
        print(element, end=' ')
    print()
1 2 3 
4 5 6 
7 8 9

2次元リストの応用例

行列演算

2次元リストは、行列演算に利用することができます。

行列の足し算や掛け算などの演算を行う際に、2次元リストを使用することで簡潔なコードを書くことができます。

画像処理

画像は、ピクセルの集合で表現されます。

2次元リストを使用することで、画像の各ピクセルの情報を格納し、画像処理を行うことができます。

例えば、画像のフィルタリングやエッジ検出などの処理を2次元リストを用いて実装することができます。

クラスのリストなど、様々な場面で活用できるので上手く活用するといいでしょう。

目次から探す