Python エラーの解決: IndexError: リスト インデックスが範囲外です
Aug 17, 2023 am 09:21 AMPython エラーの解決策: IndexError: list Index out of range
Python プログラムを作成するときに、さまざまなエラーがよく発生します。一般的なエラーの 1 つは、「 IndexError: list 」です。インデックスが範囲外です。」このエラーは通常、リスト内の存在しないインデックスにアクセスしようとしていることを意味します。この記事では、このエラーの原因を説明し、考えられる解決策をいくつか示します。
最初に、存在しないインデックスにアクセスしようとすると「IndexError: リスト インデックスが範囲外です」エラーをスローする簡単なコード例を見てみましょう:
my_list = [1, 2, 3] print(my_list[3])
このコード 、 my_list
リストの 4 番目の要素にアクセスしようとしましたが、リストには要素が 3 つしかないため、「IndexError: list Index out of range」エラーが発生します。
このエラーが発生する理由は通常 2 つあります。
- リスト範囲を超えるインデックスにアクセスした場合。
- 空のリストにアクセスしました。
最初のケースでは、インデックス値がリストの正当な範囲内にあることを確認することで解決できます。リスト要素にアクセスする前に、len()
関数を使用してリストの長さを取得し、インデックス値が範囲を超えていないかどうかを判断できます。上記のコード例を次のように変更します。
my_list = [1, 2, 3] index = 3 if index < len(my_list): print(my_list[index]) else: print("索引超出范围")
この例では、インデックス値とリストの長さを比較することで、インデックスが範囲外にならないことを確認します。インデックスが有効な場合は、対応する要素の値を出力し、そうでない場合は、「インデックスが範囲外です」というプロンプトを出力します。
空のリストにアクセスする 2 番目のケースでは、リストの要素にアクセスする前に、まずリストが空かどうかを確認できます。サンプル コードを次のように変更します。
my_list = [] index = 0 if len(my_list) > 0: print(my_list[index]) else: print("列表为空")
この例では、まず len()
関数を使用して、リストの長さが 0 より大きいかどうかを確認します。 0 の場合は、要素へのアクセスを試行します。それ以外の場合は、「リストは空です」というプロンプトが表示されます。
上記の解決策に加えて、考慮できる処理方法が他にもいくつかあります。
try-Except
例外処理メカニズムを使用して、キャッチおよびIndexError を処理します。例は次のとおりです:
my_list = [1, 2, 3] index = 3 try: print(my_list[index]) except IndexError: print("索引超出范围")
この例では、try-excel
ステートメント ブロックを使用して IndexError 例外をキャッチします。例外がキャッチされた場合は、Except ## が実行されます。 # ステートメント ブロック内のコード。
- コードを記述するときは、各インデックスの値の範囲を注意深く確認し、リストのインデックス範囲を超えていないことを確認してください。
len() 関数、例外処理などを使用できます。同時に、コードを記述するときは、このエラーを回避するためにインデックスの値の範囲を注意深く確認する必要があります。
以上がPython エラーの解決: IndexError: リスト インデックスが範囲外ですの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Google AI、開発者向けに Gemini 1.5 Pro と Gemma 2 を発表

わずか 250 ドルで、Hugging Face のテクニカル ディレクターが Llama 3 を段階的に微調整する方法を教えます

いくつかの .NET オープンソース AI および LLM 関連プロジェクト フレームワークを共有する
