Pythonのsplitで文字列を分割する方法|区切り文字で簡単にデータを整理
この記事でわかること
- Pythonで文字列を分割する方法
split()メソッドの基本的な使い方- 区切り文字を指定した分割方法
- 複数区切りや最大分割数の指定
- 実用的な例と注意点
split()とは
split() メソッドは、文字列を指定した区切り文字で分割してリストにするメソッドです
text = "りんご,バナナ,みかん"
fruits = text.split(",")
print(fruits) # ['りんご', 'バナナ', 'みかん']- 文字列
"りんご,バナナ,みかん"をカンマで分割 - 結果はリストとして返されます
区切り文字を指定しない場合
区切り文字を指定しないと、空白(スペース)で分割されます
text = "Python は 便利"
words = text.split()
print(words) # ['Python', 'は', '便利']- 連続する空白も自動で1つとして扱われます
最大分割数を指定
maxsplit 引数で分割の最大回数を指定できます
text = "りんご,バナナ,みかん,メロン"
fruits = text.split(",", 2)
print(fruits) # ['りんご', 'バナナ', 'みかん,メロン']- 最初の2回だけ分割し、残りはそのまま1つの文字列になります
応用例:CSVデータの読み込み
line = "太郎,20,175"
name, age, height = line.split(",")
print(name) # 太郎
print(age) # 20
print(height) # 175- CSV形式の文字列からデータを取り出すのに便利です
- リストのアンパックと組み合わせるとさらに簡単に使えます
注意点
- 区切り文字が文字列に存在しない場合、結果は元の文字列1つのリストになります
- 複数の区切り文字が混ざっている場合は、正規表現の
re.split()が必要です - 結果は常にリストになるので、扱いやすい形に変換することを意識すると良いです
まとめ
split()で文字列を指定した区切りで分割してリスト化できます- 区切り文字を省略すると空白で分割されます
maxsplitで分割回数を制限できます- CSVやスペース区切りのデータ処理に非常に便利です
文字列を分割する方法を覚えると、データ処理や文字列操作の幅が大きく広がります