Pythonによるstrip()メソッドの利用方法を現役エンジニアが解説【初心者向け】
初心者向けにPythonによるstrip()メソッドの利用方法について現役エンジニアが解説しています。strip()メソッドとはスペースやタブ文字、改行文字などを両端から削除するメソッドです。空白文字以外にも特定の文字を削除できます。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
Pythonによるstrip()メソッドの利用方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。
strip()メソッドを使うと、スペースなどの空白文字や指定した文字を文字列の両端から簡単に削除できます。
Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まるでしょう。
なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。
今回は、Pythonに関する内容だね!
どういう内容でしょうか?
Pythonによるstrip()メソッドの利用方法について詳しく説明していくね!
お願いします!
1. strip()メソッドとは?
trip()メソッドとは、Pythonにおける文字列型の持つメソッドの一つで、両端にある指定した文字や空白文字を文字列から削除するメソッドです。
空白文字として以下の要素を削除できます。
- スペース
- タブ
- 改行文字(\n または\r\n)
2. strip()メソッドの使い方
ここでは、strip()メソッドの使用方法をみていきましょう。
空白文字の削除
strip()メソッドはデフォルトで空白文字を削除するようになっているため、空白文字を削除する場合は、引数には何も指定する必要がありません。
下記のコードのように文字列型のstrip()メソッドを実行すると、文字列の両端にある空白文字をすべて消すことが可能です。
ここでは、空白文字として改行文字\nが使われています。
print("\nHello, world\n")
print("\nHello, world\n".strip())
上記のコードを実行すると、下記の実行結果のように、1行目は前後に改行を付けてHello, worldと出力され、2行目では改行無しで出力されるでしょう。
また、文字列中の空白文字(今回の場合はHello, worldの間のスペース)はこの方法では削除できないため、注意が必要です。
実行結果
Hello, world Hello, world
特定の文字の削除
下記のコードのように、stripメソッドの引数に削除したい文字を指定することで、文字列の両端から特定の文字を削除することが可能です。
ただし、この方法でも両端以外の文字は削除されません。
print("xxxHello, Worldxxx".strip("x"))
上記のコードでは、stripメソッドで指定した”x”という文字が”xxxHello, Worldxxx” の両端から削除された”Hello, World”が出力されます。
削除する文字が連続している場合はすべてが削除されます。
また、下記のように引数に複数文字を与えた場合は、与えた文字すべてが両端から削除されます。
print("xyyxHello, Worldyyxx".strip("xy"))
この場合、両端の”x”と”y”がすべて削除されます。
引数として与えた”xy”という順番になっていなくても削除される点に注意してください。
こちらも”Hello, World”が出力されます。
3. lstrip()メソッドとrstrip()メソッド
strip()メソッドでは、文字列の左端、右端両端から指定された要素が削除されますが、lstrip(), rstrip()メソッドを使うと、それぞれ左端、右端のみ削除できます。
lstrip(), rstrip()メソッドにおいても、引数に何も指定しないと空白文字が削除され、文字を指定するとその文字が削除されます。
下記の例では、” Hellow, World “という文字列からlstrip(), rstrip()メソッドを使って左端や右端のスペースを削除しています。
print("!", " Hello, World ", "!")
print("!", " Hello, World ".lstrip(), "!")
print("!", " Hello, World ".rstrip(), "!")
print("!", " Hello, World ".strip(), "!")
実行結果を見ると、strip()メソッドでは、両端のスペースが削除されていますが、lstrip()では左端、rstrip()では右端のスペースのみが削除されていることがわかります。
実行結果
! Hello, World ! ! Hello, World ! ! Hello, World ! ! Hello, World !
4. strip()メソッドを利用して不要な文字列を削除してみよう
それでは早速試してみましょう。
例として" \n皆さんこんにちは。こちらはTech Academyのブログです。\n "
という文字列を扱います。
まずは、strip()メソッドを使わないで出力するとどうなるか確認してみましょう。
print(" \n皆さんこんにちは。こちらはTech Academyのブログです。\n ")
下の実行結果のように、スペースが入ったり改行がされたりしています。
実行結果
皆さんこんにちは。こちらはTech Academyのブログです。
それでは、ここからstrip()メソッドを使って両端の空白文字を削除してみます。
print(" \n皆さんこんにちは。こちらはTech Academyのブログです。\n ".strip())
実行結果は、下記のようになります。
両端にあった空白文字がすべて削除されました。
今回のように両端で空白文字が連続している場合はすべてが削除されます。
実行結果
皆さんこんにちは。こちらはTech Academyのブログです。
続いて、文字を指定してstrip()メソッドを使ってみましょう。
print("皆さんこんにちは。こちらはTech Academyのブログです。".strip("。皆んさ"))
上記のコードを実行すると、以下のような結果が出力されるでしょう。
。
, 皆
, ん
, さ
の4つの文字を指定して両端から削除しています。
実行結果
こんにちは。こちらはTech Academyのブログです
最後に、lstrip()メソッドを使って左端の文字列のみ削除してみましょう。
print("皆さんこんにちは。こちらはTech Academyのブログです。".lstrip("。皆んさ"))
同じように。
, 皆
, ん
, さ
の4つの文字を指定していますが、左端のみを削除するlstrip()を使っているため、右側の.
は削除されません。
実行結果
こんにちは。こちらはTech Academyのブログです。
まとめ
今回はstrip()メソッドについて紹介してきました。
strip()メソッドを使用することで、簡単に文字列の操作が可能となります。
有効に活用していきましょう。
執筆してくれたメンター
メンター三浦
モバイルゲームを運用している会社のエンジニアをしています。趣味でWEB開発やクラウドコンピューティングもやっており、ソフトもハードもなんでもやります。 TechAcademyジュニアではPythonロボティクスコースを担当しています。好きな言語はPython, Node.js。 |
Pythonによるstrip()メソッドの利用方法がよくわかったので良かったです!
ゆかりちゃん、これからも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でも、Pythonを使った人工知能(AI)や機械学習の基礎を習得できる、オンラインブートキャンプを開催しています。
また、現役エンジニアから学べる無料体験も実施しているので、参加してみてください。