高校国語786851 views
小学社会309222 views
高校日本史190178 views
高校生物550643 views
いろは2999528 views
中学数学622525 views
中学社会667713 views
雑学1473151 views
英語610681 views
小学理科718465 views

Pythonのリスト:マイナスのインデックスは最後尾からの順番を意味する

リストのインデックスがマイナスのときはどうなるでしょうか?

a = [4, 9, 12, 37, 56]

print(a[0])
print(a[-1])
print(a[-2])
print(a[-3])
print(a[-4])
print(a[-5])
print(a[-6])

プログラムの出力結果は

4
56
37
12
9
4
Traceback (most recent call last):
File “list_2.py”, line 9, in
print(a[-6])
IndexError: list index out of range

となります。a[-1]は56、a[-2]は37を表します。つまりマイナスのインデックスは、後ろからの順番を意味します。

-1 → 後ろから1番目
-2 → 後ろから2番目

-5 → 後ろから5番目

しかし-6は、aが5つしか要素を持っていないので値を返すことができず、やはりIndexErrorというエラーを出します。