Python で文字列を分割する方法 (区切り文字と Maxsplit)

Python で、split() メソッドを使用して文字列をリストに分割する方法を学びます。スペース、カンマ、改行による分割、および分割数の制限について調べてください。

エディターでこのソリューションを試してください

概要

文字列の分割は、最も一般的なテキスト処理操作の 1 つです。 CSV ファイルの解析、ログの分割、ユーザー入力の処理、ドキュメントからの単語の抽出など、Python の組み込み文字列メソッドを使用すると、このタスクが簡単になります。このための重要なメソッドは `.split()` で、文字列を部分文字列のリストに分割します。

デフォルトでは、引数なしで `split()` を呼び出すと、文字列が空白 (スペース、タブ、改行) で分割され、連続する空白は破棄されます。 CSV データのカンマなどの特定の文字に基づいて文字列を分割する必要がある場合は、その文字を区切り文字として渡します (例: `text.split(",")`)。

`split()` メソッドは、`maxsplit` と呼ばれる 2 番目のオプションのパラメータも受け入れます。これにより、実行する分割の最大数が決まります。文字列の残りの部分はリストの最後の要素として返されます。これは、コマンドまたはメッセージの最初のいくつかのトークンのみを解析する場合に非常に役立ちます。

コードと実行の出力

このスクリプトは、デフォルトの区切り文字、カスタム区切り文字を使用した文字列の分割、および maxsplit を使用した分割の制限を示します。

sentence = "Python is fun to learn"
csv_data = "apple,banana,orange,grape"

# 1. Split by whitespace (default)
words = sentence.split()
print("Whitespace split:", words)

# 2. Split by comma separator
fruits = csv_data.split(",")
print("Comma split:", fruits)

# 3. Using maxsplit parameter
limited_split = csv_data.split(",", maxsplit=2)
print("Maxsplit of 2:", limited_split)
端子出力
Whitespace split: ['Python', 'is', 'fun', 'to', 'learn']
Comma split: ['apple', 'banana', 'orange', 'grape']
Maxsplit of 2: ['apple', 'banana', 'orange,grape']

段階的な実装

  • 文字列変数に対して .split() メソッドを呼び出します。
  • カスタム区切り文字で分割するには、「,」や「\n」などの区切り文字列を渡します。
  • 特定の項目数の後で分割を停止するには、maxsplit 引数を使用します。

よくある質問

Split() は連続するスペースをどのように処理しますか?

デフォルト (引数なし) では、連続するスペースは 1 つの区切り文字として扱われます。ただし、「 」を渡すと、連続するスペースにより出力リストに空の文字列が生成されます。

文字列を複数の異なる区切り文字で分割するにはどうすればよいですか?

複数の区切り文字 (カンマ、スペース、セミコロンなど) で分割するには、 re.split() 関数で正規表現を使用します。

関連トピック

推奨される Python リソース

関連するインタラクティブなチュートリアル、チートシート、コード比較で知識を深めてください。