#str.rstrip()とは
文字列を右(末尾)から、引数に指定された文字、あるいは文字列がないか探して除去する関数である。
以下に例を示す。
>>> x = 'Don\'t say "lazy"'
>>> x = x.rstrip('"lazy"')
>>> print(x)
Don't say
x.rstrip()は、xから引数に該当する文字列を除去した結果(str型)を返却するため、返り値を受け取らないと除去した値を扱うことができない。
これは、str型がimmutableであることに起因するだろう。
##注意点とは
引数に含まれる文字が除去の対象となることである。
もう少し具体的に言うと、'"lazy"' が仮引数に与えられた場合、
'"lazy"' の連続した文字列を除去するのではなく、'y"' や 'zy"', 'az' など部分的な文字であっても除去してしまう。
ただし、文字列の末尾が引数の文字列の末尾と一致していない場合や、 引数に含まれない文字が現れた場合、
そこで評価は終了し値が返される。
具体例を以下に示す。
>>> x = 'Don\'t say "lazy"'
>>> print(x.rstrip(" \"lazy\""))
Don't s
>>> print(x.rstrip("lazy"))
Don't say "lazy"
1つ目のrstrip()について、qiita1.pyとの違いは空白文字が追加されている。
2つ目のrstrip()について、末尾が違うため除去されずに値が返されている。
##おわりに
Don't say "lazy"というわかりにくい文字列で書いてたいへん恐縮だが、
文字列内に " と ' が含まれているため、文字列の勉強にはおススメである。
##開発環境
Windows10 64bit
Python 3.7.1
PyCharm 2018.3.2
##参考資料
学習に用いているものとして、以下の2つがメインです。
・詳細! Python 3 入門ノート
・Python公式ドキュメント