Pythonで後ろから部分文字列を取得する
Pythonで部分文字列を取得するにはスライスを使います。string[start:stop]
のように開始インデックスと終了インデックスを指定して部分文字列を取得しますが、スライスの開始インデックスに負のインデックスを与えることで、末尾から部分文字列を抽出することができます。
ソースコード
def substring_from_end(string, length):
"""
文字列の末尾から指定された長さの部分文字列を返します。
パラメータ:
string (str): 部分文字列を抽出する元の文字列。None の場合は空の文字列を返します。
length (int): 抽出する部分文字列の長さ。
戻り値:
str: 文字列の末尾から抽出した部分文字列。
"""
if string is None:
return ""
return string[-length:]
実行結果
# 例1: None の場合
string = None
length = 3
substring = substring_from_end(string, length)
print(substring) # 出力: ""
# 例2: 文字列 "abcdef" の末尾から3文字を取り出す場合
string = "abcdef"
length = 3
substring = substring_from_end(string, length)
print(substring) # 出力: "def"