見出し画像

rsplit(),split(),rstrip()の違いと使用例

こんにちは!
エンジニアを目指して頑張っているVictoriaです。

最近pythonのlistを復習していますが、タイトルにある3つのメソッドの区別がつかなくなりました。そのため、こちらのNoteで詳しく説明します。


rsplit()

定義

文字列を指定した区切り文字で分割して、listとして返します。右端から分割します。

使用例

a = input().rsplit()
print(a)
type(a)

上記コードの実行結果は以下になります。

入力
結果

input()に「東京 大阪 京都」をスペースを開けて入力しますと、listとして出力されます。そしてtypeでaの型を調べますと、listと出力されました。

数字を入力したらどうなるでしょうか?1234をスペースを開けて入力しますと、同じlistとして出力されます。そしてaの型がlistになっています。

数字を入力した結果

rsplit()はデフォルトで空白を一つの区切りで分割します。その他の記号を一つの区切りとして分割したい場合、以下のように書けば大丈夫です。

区切りの記号の指定

split()

定義

split()はrsplit()と同じく、文字列を指定した区切りで分割する役割です。そしてデフォルトでは空白を一つの区切りで分割します。

違いは、split()は左から分割します。rsplit()は右から分割します。

使用例

a = input().split(" ",1)
print(a)
type(a)

一行目のsplit(" ",1)の1とは一回のみ分割する意味です。

実行結果は以下になります。

左から一回のみ空白を区切りで分割します。

ちなみに、rsplit()の場合の実行結果が以下になります。

右から一回のみ空白を区切りで分割します。

rstrip()

定義

文字列の右側から指定した文字(デフォルトでは空白、改行)を削除します。

使用例

a = input().rstrip()
print(a)
type(a)

実行しますと、結果が以下になります。

inputに「1,2,3,4-」を入力して実行しました。

rstrip("-")は文字列の右側から「-」を削除する意味です。

input()メソッドはstr型ですので、「-」を削除してからそのまま1,2,3,4と出力しました。そしてtypeがstr型です。

ちなみに、「-」を2つ入力した場合でも2つの「-」がともに削除されます。

「-」を2つ入力した場合です。

まとめ

  • rsplit(): 文字列を区切り文字で右から左に分割し、リストを返します。

  • split(): 文字列を区切り文字で左から右に分割し、リストを返します。

  • rstrip(): 文字列の右側から指定した文字を削除し、新しい文字列を返します。


いいなと思ったら応援しよう!