まず結論

len() は、文字列やリストの長さを調べる関数です。

name = "moco"
print(len(name))

この結果は 4 です。

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

次のような疑問がある人向けです。

  • len() が何を数えているのか分からない
  • リストの個数を調べたい
  • len(items) - 1 の意味が分からない

len() は「中にいくつあるか」を数えるものです。

文字列の長さ

文字列に使うと、文字数を返します。

word = "python"
print(len(word))

python は6文字なので、結果は 6 です。

リストの要素数

リストに使うと、要素の数を返します。

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

この結果は 3 です。

インデックスとはずれる

リストの最初は 0 番目です。

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

要素数は 3 ですが、最後のインデックスは 2 です。
そのため、最後を取り出すときに len(items) - 1 が出てくることがあります。

空のとき

空の文字列やリストなら、結果は 0 です。

print(len(""))
print(len([]))

どちらも 0 になります。

読み方のコツ

len(items) は「items の中に何個ある?」と読みます。
インデックス番号ではなく、個数を返す点だけ注意すると分かりやすいです。