HOME
区切り文字で分割する場合は split 関数を使います。引数を省略した場合、空白文字で分割します。空白文字にはスペースや改行、タブが含まれ、連続する空白文字はまとめて処理されます。
区切り文字で分割する場合は split
関数を使います。引数を省略した場合、空白文字で分割します。空白文字にはスペースや改行、タブが含まれ、連続する空白文字はまとめて処理されます。
str = "1 2 3"
print(str.split()) # ["1", "2", "3"]
split()
split
関数は、第一引数で区切り文字を指定できます。
str = "1,2,3"
print(str.split(",")) # ["1", "2", "3"]
split()
split
関数は、第二引数で最大分割回数を指定できます。
str = "1,2,3,4,5"
print(str.split(",", 2)) # ["1", "2", "3,4,5"]
split()
rsplit
関数は split
関数の右から分割する関数です。
str = "1,2,3,4,5"
print(str.rsplit(",", 2)) # ["1,2,3", "4", "5"]
rsplit()
splitlines
関数は、改行で分割する関数です。改行は LF (\n)
と CR+LF (\r\n)
が対象になります。
str = "1\n2\r\n3"
print(str.splitlines()) # ["1", "2", "3"]
splitlines()
正規表現にマッチした文字列で分割したい場合は re
モジュールの split
関数を使います。第一引数に正規表現パターン、第二引数に対象の文字列を指定します。
import re
str = "abc123xyz456"
print(re.split("\d+", str)) # ["abc", "xyz", ""]
re.split()
第三引数に最大分割回数を指定することができます。
import re
str = "abc123xyz456"
print(re.split("\d+", str, 1)) # ["abc", "xyz456"]
re.split()
スライスで文字列を分割するには [start:end]
のように始点と終点を指定します。始点と終点を指定した場合、start <= x < end
の範囲の文字列が抽出できます。start
を省略すると先頭から、end
を省略すると末尾までが範囲となります。
str = "abc123"
print(str[:3]) # abc
print(str[3:]) # 123