Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで改行コードを基準に文字列を分割する方法

Pythonで改行コードを基準に文字列を分割する方法

Pythonでは、文字列クラスに標準で用意されている splitlines() メソッドを使うことで、改行を区切りとして文字列を簡単にリストへ分割できます。ここでは、代表的な2つの方法とその違いを解説します。

1. splitlines() メソッドを使う方法

splitlines() は、改行の位置で文字列を自動的に分割し、各行を要素とするリストを返します。最もシンプルで推奨される方法です。

>>> """some
multi line
string""".splitlines()
['some', 'multi line', 'string']

このように、複数行の文字列が ['some', 'multi line', 'string'] というリストに変換されます。

2. split() メソッドで区切り文字 '\n' を指定する方法

もうひとつの方法として、split() メソッドの引数に区切り文字 '\n' を明示的に指定することでも、同様の結果が得られます。

>>> """some
multi line
string""".split('\n')
['some', 'multi line', 'string']

splitlines() と split('\n') の違い

どちらも同じ結果になりますが、挙動には重要な違いがあります。splitlines()\n 以外にも、Windowsで使われる \r\n や古いMac形式の \r など、さまざまな改行コードに対応しています。一方、split('\n')\n のみを区切りとして認識するため、\r\n が含まれるテキストを処理すると、行末に不要な \r が残ってしまうことがあります。

異なるOSで作成されたテキストファイルなどを扱う場合は、汎用性の高い splitlines() を使うのが安全です。用途に応じて適切なメソッドを選択しましょう。

  1. Pythonで文字列を逆順にする方法|スライスとreversed()の使い方を解説

    Pythonでは、文字列スライスやrange演算子を活用することで、文字列を簡単に逆順(反転)にすることができます。この記事では、代表的な2つの方法をわかりやすく解説します。 方法1:スライス記法 [::-1] を使う(推奨・高速) 最もシンプルで一般的なのが、スライス記法を使う方法です。ステップに -1 を指定するだけで、文字列を後ろから前へ一文字ずつ取り出せます。 >>> Hello[::-1] olleH >>> Halloween[::-1] neewollaH スライスの仕組み 角括弧 [] の中には、コロン「:」で区切った3つの値を指定できます

  2. Pythonで文字列が英数字のみかどうかを判定する方法【isalnum()と正規表現】

    Pythonでは、文字列が英数字(アルファベットと数字)のみで構成されているかどうかを簡単に判定できます。主な方法は2つあります。文字列クラスに組み込まれている isalnum() メソッドを使う方法と、正規表現を使う方法です。 isalnum()メソッドを使う方法 Pythonの文字列クラスには isalnum() というメソッドが用意されています。このメソッドを文字列に対して呼び出すと、文字列が英数字のみで構成されている場合に True を、記号などが含まれる場合には False を返します。 >>> 123abc.isalnum() True >>>