Pythonで文字列から空白を消すことができるstrip関数について書いています。
この記事では空白削除に関連した下記の関数について解説します。
・lstrip関数
・rstrip関数
載せているコードはPythonのバージョン3.11で確認しました。
strip関数の使い方
strip関数を使うことで、文字列の前後から空白を削除することができます。
例えば、下記のように使うことができます。
helloText = " hello world "
print("!!" + helloText.strip() + "!!") # !!hello world!!
最初にhelloText
変数に対して、前後に空白を含んだ文字列の「hello world
」を代入しました。
次の処理で、strip関数を呼び出して、前後の空白を削除した文字列を返しています。
空白が削除されているのを確認するために、前後に「!!
」をつけて出力しました。
出力結果は「!!hello world!!
」となり、最初の文字列から前後の空白が消えていることが確認できました。
削除する文字を指定する
削除する文字をstrip関数に対して指定することができます。
削除する文字を指定すると、文字列の前後から削除する文字の組み合わせがある間、文字を削除します。
url = "https://codelikes.com"
result = url.strip(':htpscmo.')
print(result) # //codelike
最初にurl
変数に文字列の「`https://codelikes.com`」を代入しました。
次の処理で、strip関数に対して、削除したい文字を並べて渡しています。
これで、url
変数に文字列から「削除したい文字」が前後に続く間、削除されます。
結果、前から「https:
」が削除されて、後ろから「s.com
」が削除されました。
結果をresult
変数に受けて、出力しています。
出力されるのは、前後から削除文字を抜いた「//codelike
」になりました。
引数と戻り値のまとめ
strip関数の引数と戻り値をまとめます。
引数
引数を渡さずに使ったときには、文字列から前後の空白文字(スペース)が削除されました。
" 前後に空白つき文字 ".strip() # 前後に空白つき文字
引数を渡したときには、文字列の前後から指定した削除文字が削除されました。
"!-!-!test!-!-!".strip("!-") # test
戻り値
前後の空白を削除した文字列が返ってきます。
削除する文字を指定した場合には、前後から削除する文字を除いた文字列が返ってきました。
lstrip関数の使い方
lstrip関数は、文字列の左側のみ空白を削除してくれます。
helloText = " hello world "
print("!!" + helloText.lstrip() + "!!") # !!hello world !!
strip関数の解説と同じプログラムを少し変えました。
最初にhelloText
変数に対して、前後に空白を含んだ文字列の「hello world
」を代入しました。
次の処理で、lstrip関数を呼び出しています。
これで、左側のみ空白を削除します。
左側だけなので、出力結果を確認すると「!!hello world !!
」となります。
右側に空白が残りました。
削除する文字を指定する
lstrip関数にも、削除する文字を指定することができます。
url = "https://codelikes.com"
result = url.lstrip(':htpscmo.')
print(result) # //codelikes.com
最初にurl
変数に文字列の「`https://codelikes.com`」を代入しました。
次の処理で、lstrip関数に対して、削除したい文字を並べて渡しています。
文字列の左側のみ削除されます。
result
変数で結果を受けて、出力すると「//codelikes.com
」となりました。
左側のみ、指定した文字が削除されました。
引数と戻り値のまとめ
lstrip関数の引数と戻り値をまとめます。
引数
引数を渡さずに使ったときには、文字列から左側の空白文字(スペース)が削除されました。
" 前後に空白つき文字 ".lstrip() # '前後に空白つき文字 '
引数を渡したときには、文字列の左側から指定した削除文字が削除されました。
"!-!-!test!-!-!".lstrip("!-") # 'test!-!-!'
戻り値
文字列の左側の空白を削除した、結果の文字列が返ってきます。
削除する文字を指定した場合には、左側から削除する文字を除いた文字列が返ってきました。
rstrip関数の使い方
rstrip関数は、文字列の右側のみ空白を削除してくれます。
helloText = " hello world "
print("!!" + helloText.rstrip() + "!!") # !! hello world!!
strip関数の解説と同じプログラムを少し変えました。
最初にhelloText
変数に対して、前後に空白を含んだ文字列の「hello world
」を代入しました。
次の処理で、rstrip関数を呼び出しています。
これで、右側のみ空白を削除します。
右側だけなので、出力結果を確認すると「!! hello world!!
」となります。
左側に空白が残りました。
削除する文字を指定する
rstrip関数にも、削除する文字を指定することができます。
url = "https://codelikes.com"
result = url.rstrip(':htpscmo.')
print(result) # https://codelike
最初にurl
変数に文字列の「`https://codelikes.com`」を代入しました。
次の処理で、rstrip関数に対して、削除したい文字を並べて渡しています。
文字列の右側のみ削除されます。
result
変数で結果を受けて、出力すると「`https://codelike`」となりました。
右側のみ、指定した文字が削除されました。
カンマ区切りの文字を削除する
CSVなどでカンマ区切りにしたいときに、一番末尾の文字を削除するときにも使えます。
fruits = ['apple', 'grape', 'orange', 'melon']
output = ''
for fruit in fruits:
output += fruit + ','
print(output.rstrip(',')) # apple,grape,orange,melon
fruits
変数に4つの要素でリストを作りました。
その後にfor文を使って、それぞれの要素をカンマ区切りにしています。
最後にrstrip関数に「,
」を渡して、末尾のカンマを削除して出力しました。
そうすると、結果「apple,grape,orange,melon
」が出力されました。
このように、末尾の指定した文字を削除するときに便利です。
引数と戻り値のまとめ
rstrip関数の引数と戻り値をまとめます。
引数
引数を渡さずに使ったときには、文字列から右側の空白文字(スペース)が削除されました。
" 前後に空白つき文字 ".rstrip() # ' 前後に空白つき文字'
引数を渡したときには、文字列の右側から指定した削除文字が削除されました。
"!-!-!test!-!-!".rstrip("!-") # '!-!-!test'
戻り値
文字列の右側の空白を削除した、結果の文字列が返ってきます。
削除する文字を指定した場合には、右側から削除する文字を除いた文字列が返ってきました。
空白を消すstrip関数についてのまとめ
今回はPythonで空白を消すstrip関数について書きました。
記事の内容をまとめると、下記のようになります。
・lstrip関数を使うと、文字列の左側の空白を消すことができた。
・rstrip関数を使うと、文字列の右側の空白を消すことができた。
・strip/lstrip/rstripには削除したい文字を渡して、文字列から消すことができた。
コメント