スライシング方法のまとめ
2022/2/1 2022/4/15

Pythonでは文字列からN文字目を抜き出す、NからM文字目を抜き出す、ということができます。
これをスライス、スライシング等と言うらしいです。今回はその方法をまとめました。
スライシング方法まとめ

No.2のように、マイナスも使用可能なため、実際にはもっと多くの方法が存在しますが、基本的な考え方は同じです。
Index番号ですが、文字列の左から0, 1, 2, 3…と数え、マイナスの場合は右端から-1, -2, -3…と数えます。マイナスの場合は0から数えないのがポイントです。
サンプルコード
上述の表のサンプルコードです。
alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
print(alphabet[3])
print(alphabet[-3])
print(alphabet[4:9])
print(alphabet[15:])
print(alphabet[:15])
print(alphabet[2:15:2])
上記コードをGoogle Colabで実行すると下図のようになります。

どんな時にスライシングするか
私はまだ勉強を始めたばかりで良いユースケースが思いつきませんが、ログ処理に使えそうだなと思いました。ログには固定長の文字列が含まれてることが多いためです。
例えば、2020/02/02 02:02:02 ERROR Error XX occurs at YYなんてログがあった時に、先頭の日時は固定です。この日時だけを抜き出すとか、あるいは日時の後ろだけ抜き出すとか、そんなことができそうです。