Pythonには、文字列を部分文字列化する多くの方法があります。それはしばしば「スライス」と呼ばれます。
それはこのテンプレートに従います:
string[start: end: step]
どこ、
start
:部分文字列の開始インデックス。このインデックスの文字は部分文字列に含まれます。startが含まれていない場合は、0に等しいと見なされます。
end
:部分文字列の終了インデックス。このインデックスの文字は部分文字列に含まれていません。endが含まれていない場合、または指定された値が文字列の長さを超える場合、デフォルトでは文字列の長さと等しいと見なされます。
step
:含まれる現在の文字の後のすべての「ステップ」文字。デフォルト値は1です。ステップ値を省略すると、1に等しいと見なされます。
テンプレート
string[start:end]
:インデックスの最初から最後まですべての文字を取得-1
string[:end]
:文字列の先頭から末尾までのすべての文字を取得-1
string[start:]
:インデックスの先頭から文字列の末尾までのすべての文字を取得します
string[start:end:step]
:最初から最後まですべての文字を取得-1すべてのステップ文字を割引
例
- 文字列の最初の5文字を取得します
string = "freeCodeCamp" print(string[0:5])
出力:
> freeC
注:print(string[:5])
と同じ結果を返しますprint(string[0:5])
- 文字列の3番目の文字から長さ4の部分文字列を取得します
string = "freeCodeCamp" print(string[2:6])
出力:
> eeCo
開始インデックスまたは終了インデックスは負の数である可能性があることに注意してください。負のインデックスは、文字列の最初ではなく最後から(つまり、右から左に)カウントを開始することを意味します。インデックス-1は文字列の最後の文字を表し、-2は最後から2番目の文字を表します。
- 文字列の最後の文字を取得します
string = "freeCodeCamp" print(string[-1])
出力:
> p
- 文字列の最後の5文字を取得します
string = "freeCodeCamp" print(string[-5:])
出力:
> eCamp
- 最後の4文字と最初の文字を除くすべての文字を含む部分文字列を取得します
string = "freeCodeCamp" print(string[1:-4])
出力:
> reeCode
その他の例
str = “freeCodeCamp” print str[-5:-2] # prints ‘eCa’ print str[-1:-2] # prints ‘’ (empty string)
- 文字列から1文字おきに取得
string = "freeCodeCamp" print(string[::2])
出力:
> feCdCm