まず結論

items[0] は、リストの最初の値を取り出す書き方です。

items = ["りんご", "バナナ", "みかん"]
print(items[0])

表示されるのは "りんご" です。

こんなときに読む記事です

次のようなところで混乱した人向けです。

  • 最初の要素なのに [0] と書く理由が分からない
  • [1] が1番目ではなく2番目になるのが不思議
  • IndexError: list index out of range が出た

Pythonのリストは、人間の「1番目」ではなく、コンピュータ寄りの「0番目」から数えます。

なぜ0なの?

Pythonのリストは、最初を 0 番目として数えます。

0番目: りんご
1番目: バナナ
2番目: みかん

人間の感覚では「1番目」が最初なので、ここで混乱しやすいです。

番号と個数はずれる

3個の値があるリストでも、使える番号は 012 です。

items = ["りんご", "バナナ", "みかん"]

このリストの長さは3ですが、最後の番号は2です。

2番目を取りたいとき

2番目の値を取りたいなら、[1] を使います。

items = ["りんご", "バナナ", "みかん"]
print(items[1])

表示されるのは "バナナ" です。

よくあるエラー

存在しない番号を指定すると、IndexError になります。

items = ["りんご", "バナナ", "みかん"]
print(items[3])

このリストにあるのは 012 までです。
3 番目は存在しません。

後ろから取りたいとき

Pythonでは、後ろから数える書き方もあります。

items = ["りんご", "バナナ", "みかん"]
print(items[-1])

[-1] は最後の値です。
この場合は "みかん" が表示されます。