Python: 文字列の切り出し(範囲取得)方法 []
切り出し(範囲取得) []
Pythonで文字列の一部を切り出したい(範囲取得したい)場合は、 次のように [] を使って指定します。
書式
文字列[開始インデックス:終了インデックス + 1]
先頭文字のインデックスは「0」です。
s = "abcde" # 先頭から3文字目まで print(s[0:3]) # abc # 2番目から4文字目まで print(s[1:4]) # bcd
インデックスを省略した場合
最初のインデックスを省略した場合は「0」指定と同じになり、 終了のインデックスを省略した場合は「len(文字列)」指定と同じになります。
s = "abcde" # s[0:2] と同じ print(s[:2]) # ab # s[1:len(s)] と同じ print(s[1:]) # bcde
インデックスに負の値を指定した場合
インデックスに負の値を指定した場合は、
最後からの文字数を指定することになります。
次のように「拡張子を取り除きたい」場合などに使えます。
s = "test.txt" # 最後の4文字を取り除く print(s[0:-4]) # test
ステップ数(間隔)を指定する
文字を取り出すステップ数(間隔)を指定することもできます。 次のように終了インデックスの次にステップ数を指定します。
文字列[開始インデックス:終了インデックス + 1:ステップ数]
s = "abcdefg" # ステップ数を指定 print(s[::2]) # aceg # 2番目の文字からステップ数2で取り出す print(s[1::2]) # bdf