ホームページ > バックエンド開発 > Python チュートリアル > 事前定義された次元を使用せずに Python で 2 次元配列を適切に初期化して使用する方法

事前定義された次元を使用せずに Python で 2 次元配列を適切に初期化して使用する方法

Patricia Arquette
リリース: 2024-12-11 14:30:10
オリジナル
577 人が閲覧しました

How to Properly Initialize and Use Two-Dimensional Arrays in Python Without Predefined Dimensions?

長さを初期化せずに Python で 2 次元配列を定義する

長さを指定せずに Python で 2 次元配列を定義しようとすると、例:

Matrix = [][]
ログイン後にコピー

「IndexError: list」が発生する可能性があります。インデックスが範囲外です」エラー。これを解決するには、項目を追加する前に、外側のリストを空のリストで初期化する必要があります。 Python は、この目的のためにリスト内包表記と呼ばれる手法を利用します。

次のコードを考えてみましょう:

w, h = 8, 5
Matrix = [[0 for x in range(w)] for y in range(h)] 
ログイン後にコピー

ここでは、それぞれ 8 つのゼロを含む 5 つのリストのリストを作成しました。ここで、この配列に項目を追加できます。

Matrix[0][0] = 1
Matrix[6][0] = 3 # error! out of range 
Matrix[0][6] = 3 # valid
ログイン後にコピー

行列は「y」アドレス メジャーであることに注意してください。これは、「y インデックス」が「x インデックス」に先行することを意味します。例:

print Matrix[0][0] # prints 1
x, y = 0, 6 
print Matrix[x][y] # prints 3
ログイン後にコピー

非正方行列を扱う場合は、インデックス付けに注意し、内部リストと外部リストの両方に同じ変数名 (例: "x") を使用しないことが重要です。

以上が事前定義された次元を使用せずに Python で 2 次元配列を適切に初期化して使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート