Pythonで空白を消すstrip関数!(lstrip,rstrip)

Python Python

Pythonで文字列から空白を消すことができるstrip関数について書いています。
この記事では空白削除に関連した下記の関数について解説します。

・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関数について書きました。
記事の内容をまとめると、下記のようになります。

・strip関数を使うと、文字列の前後の空白を消すことができた。
・lstrip関数を使うと、文字列の左側の空白を消すことができた。
・rstrip関数を使うと、文字列の右側の空白を消すことができた。
・strip/lstrip/rstripには削除したい文字を渡して、文字列から消すことができた。

コメント

タイトルとURLをコピーしました