Pythonの文字列をスライスする方法【インデックスを理解しよう】

Pythonの文字列をスライスする方法とそのときに指定するインデックスの覚え方も紹介します。リストやタプルのスライスとほぼ同じ要領でスライスできます。

今回は文字列のオブジェクトの性質も合わせて解説しています。参考になれば幸いです。

文字列のインデックスとは

文字列はリストやタプルと同じように0から始まる整数のインデックスが割り振られています

インデックスを指定するとそれに対応する文字を取り出せます。しかし、その文字を変更することはできません

  • 文字列はstr型のオブジェクトで以下の性質をもつ
    • イミュータブル(変更不可)
    • イテラブル(反復可能)
      • for文でループ可能
    • シーケンス
      • 整数のインデックスが割り振られている

前からスライスする方法

  • 「文字列[スタート:ストップ]」
  • コロン(:)を使って書く
  • スタートとストップのインデックスを指定する。
    • 片方だけでもOK
    • スタートのインデックスの要素は含まれる
    • ストップのインデックスの要素は含まれない
    • インデックスを超えると自動で調節する

後からスライスする方法

スタートとストップに負のインデックスを渡すだけで逆からスライスできます。このときもインデックスを超えると自動で調節してくれます。

スライスの覚え方

文字列のスライス
スライスの区切り方

スライスでインデックスを指定すると上の画像のように区切られます。正のインデックスは文字の前で区切られて、負のインデックスは文字の後ろで区切られます。

まとめ

  • 文字列はstr型のオブジェクト
    • イミュータブルでイテラブルなシーケンス
  • インデックスは越えるとエラー
  • スライスのインデックスは越えても自動調節
Pythonの文字列に関する記事たち
5

当ブログではPython初心者が独学で習得するためのカリキュラムを公開中!

初心者がPythonを独学で習得できたロードマップはコチラ

Pythonの文字列をスライスする方法【インデックスを理解しよう】
最新情報をチェックしよう!