【Python】改行コード(\n)を文字列から削除する方法:replace()、strip()

時計 2022.02.06 / 時計

【Python】改行コード(\n)を文字列から削除する方法:replace()、strip()

本記事ではPythonで文字列から改行コード(\n)を文字列から削除する方法について解説していきます。

Pythonでテキストファイルの文字列を操作する際に、「改行」や「空白(スペース)」を削除したいことが多々あります。

Pythonには簡単に「改行」や「空白(スペース)」を削除するためのメソッドが用意されています。

ここでは「改行」に注目して解説していきます。「空白(スペース)」の削除については以下記事をご参照ください。

本記事を通して以下の知識を学べます。

学べる知識
  • 文字列からすべての改行を削除する方法
  • 文字列の先頭や末尾から改行を削除する方法

Pythonにおける改行

改行コード

Pythonではデータ出力の際、改行を「\n」という改行コードで表します。

テキストファイルからreadlines()メソッドなどを用いて文字列を取得して操作する際に、改行を削除することがよくあります。

文字列から改行を削除

文字列からすべての改行を削除:replace()

文字列からすべての改行を削除するにはreplace()メソッドを使用します。

>>> str ='Hello,world!\n'
>>> str.replace('\n', '')
'Hello,world!'

replace()メソッドは、文字列に含まれる特定の文字列を別の文字列で置き換えることができます。

構文

replace(old, new [, count])

上記構文のように、replace()メソッドには3つの引数を渡すことができます。

oldには置き換える文字列、newには置き換え後の文字列を指定します。countは必須ではありませんが、置き換える個数を指定できます。

そのため引数oldに改行\n、引数newに何も指定しなければ文字列から改行を削除できるのです。

文字列の先頭と末尾から改行を削除:strip()

文字列の先頭と末尾から改行を削除するためにはstrip()メソッドを使用します。

>>> str ='\nHello,world!\n'
>>> str.strip()
'Hello,world!'

strip()メソッドは引数を省略することで文字列の先頭と末尾から改行を削除した文字列を返します。

構文

strip([chars])

引数に文字列を指定すると、その指定した文字列を先頭と末尾から削除します。

>>> str ='Hello,world!H'
>>> str.strip('H')
'ello,world!'

strip()メソッドの引数を省略することで改行を削除しますが、改行以外にも以下の文字も削除対象になります。

  • 改行文字(\n)
  • 空白文字
  • タブ文字(\t、\v)
  • フォームフィード(\f)

文字列から末尾の改行を削除:rstrip()

文字列から末尾の改行を削除するためには、rstrip()メソッドを使用します。

>>> str ='Hello,world!\n'
>>> str.rstrip()
'Hello,world!'

rstrip()メソッドはstrip()メソッドと同様に引数を省略することで文字列の末尾から改行や空白文字などを削除した文字列を返します。

まとめ

本記事「【Python】改行コード(\n)を文字列から削除する方法:replace()、strip()」はいかがでしたか。

Pythonでテキストファイルを扱う際は、ぜひここで解説したことを生かしてみてください。