Pythonでの2次元配列の初期化
ネストしたリストの使用
2次元配列の初期化にはネストしたリストを使用することができます。以下は例です:
two_d_array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(two_d_array)
# 出力: [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
このコードは、ネストしたリストを使用して3x3の配列を作成します。
List Comprehensionsの使用
List comprehensionsは、より簡潔な方法を提供します:
rows, cols = 3, 3
two_d_array = [[0 for j in range(cols)] for i in range(rows)]
print(two_d_array)
# 出力: [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
これは、全てゼロの3x3の2次元配列を初期化します。
2次元配列内の要素へのアクセス
行と列を指定することで要素にアクセスできます
two_d_array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
element = two_d_array[1][2]
print(element)
# 出力: 6
このコードは、2行目、3列目の要素にアクセスします。
2次元配列の変更と操作
2次元配列の変更は、それにアクセスするのと同様です
two_d_array[1][2] = 10
print(two_d_array)
# 出力: [[1, 2, 3], [4, 5, 10], [7, 8, 9]]
このコードは、2行目、3列目の値を10に変更します。
2次元配列を効率的に反復処理する
ネストしたループを使用して、2次元配列を効率的に反復処理できます
for row in two_d_array:
for element in row:
print(element, end=" ")
print()
# 出力:
1 2 3
4 5 10
7 8 9
このコードは、行ごとにすべての要素を出力します。
2次元配列を一次元配列に変換する
List comprehensionを使用して2次元配列を一次元配列に平坦化できます
flat_array = [element for row in two_d_array for element in row]
print(flat_array)
# 出力: [1, 2, 3, 4, 5, 10, 7, 8, 9]
特定の数値で一次元配列を2次元配列に変換する
列数を指定することで一次元配列を2次元配列に変換できます
cols = 3
two_d_array = [flat_array[i:i+cols] for i in range(0, len(flat_array), cols)]
print(two_d_array)
# 出力: [[1, 2, 3], [4, 5, 10], [7, 8, 9]]
よくある質問
Pythonでの2次元配列とは何ですか? 2次元配列は、要素のグリッド状の保管を可能にする配列の配列です。
Pythonで2次元配列をどうやって初期化しますか? 2次元配列は、ネストしたリストまたはList Comprehensionsを使用して初期化できます。
Pythonで2次元配列をどう変更しますか? 行と列のインデックスを指定して要素を変更できます。
2次元配列を効率的に反復処理できますか? はい、効率的な反復処理にはネストしたループを使用できます。
Pythonで1Dと2Dの配列をどう変換しますか? List comprehensionsを使用して1Dと2Dの配列の間で変換できます。上記の例で示されています。