最初の区切り文字で文字列を分割するための最善の方法は何でしょうか。
例えば:
"123mango abcd mango kiwi Peach"
最初のmango
を分割して、
"abcd mango kiwi Peach"
から ドキュメント :
str.split([sep[, maxsplit]])
区切り文字列としてsepを使用して、文字列内の単語のリストを返します。 maxsplitが与えられた場合、最大でmaxsplit分割が行われます(したがって、リストは最大で
maxsplit+1
個の要素を持ちます。
s.split('mango', 1)[1]
>>> s = "123mango abcd mango kiwi Peach"
>>> s.split("mango", 1)
['123', ' abcd mango kiwi Peach']
>>> s.split("mango", 1)[1]
' abcd mango kiwi Peach'
私にとってより良いアプローチはそれです:
s.split('mango', 1)[-1]
もし起こった場合、その出現は文字列の中にないので "IndexError: list index out of range"
"となるでしょう。
そのため-1
は害を受けることはありません。発生回数はすでに1に設定されています。