まず結論

items[1:3] は、リストの一部を切り出す書き方です。

items = ["A", "B", "C", "D"]
print(items[1:3])

結果は ["B", "C"] です。

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

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

  • [1:3] のコロンの意味が分からない
  • なぜ 3 番目が含まれないのか分からない
  • リストの一部だけ取り出したい

スライスは、開始位置と終了位置を指定して切り出します。

開始位置は含む

items[1:3]1 は、取り出し始める位置です。

items = ["A", "B", "C", "D"]
print(items[1])

1 番目は "B" です。
スライスでも、ここから取り出し始めます。

終了位置は含まない

items[1:3]3 は、取り出し終わる位置の手前です。

1番目: B を含む
2番目: C を含む
3番目: D は含まない

だから結果は ["B", "C"] になります。

最初から取り出す

開始位置を省略すると、最初から取り出します。

items = ["A", "B", "C", "D"]
print(items[:2])

結果は ["A", "B"] です。

最後まで取り出す

終了位置を省略すると、最後まで取り出します。

items = ["A", "B", "C", "D"]
print(items[2:])

結果は ["C", "D"] です。

読み方のコツ

items[1:3] は「1から3の手前まで」と読みます。
終了位置を含まないことだけ先に覚えると、スライスはかなり使いやすくなります。