目次
エラー発生の経緯
Pythonでリストの中身を取り出そうとした際、
以下のエラーが発生しました。
IndexError: list index out of range
これは、リストの範囲外のインデックスを指定してしまった場合に発生するエラーです。
実際に実行したコマンド
a = [2, 4, 6, 7]
a[5]
このコードを実行したところ、エラーが表示されました。
原因
Pythonのリストでは、インデックス(添え字)は0からスタートします。
上記のリストa
の場合、
a[0]
→ 2a[1]
→ 4a[2]
→ 6a[3]
→ 7
となり、インデックス3までしか存在しません。
それに対して、存在しないインデックス5を指定してしまったため、
エラーが発生しました。
対処法
正しいインデックス範囲内で指定することで解決します。
正しいコード例
a = [2, 4, 6, 7]
a[0]
これを実行すると、次のように出力されます。
2
このように、リストのインデックスは**必ず範囲内(0~リストの長さ−1)**で指定するようにしましょう。
補足|インデックスの注意点
- インデックスは0から始まります。
len(a)
でリストの長さを確認できますが、最大インデックスはlen(a) - 1
になります。
例:
a = [2, 4, 6, 7]
print(len(a)) # → 4
# インデックスは 0, 1, 2, 3 が使える
ここまで読んでいただき、誠にありがとうございました。