按第一次出现分割
如何在字符串中找到第一个分隔符并将其拆分开来,最好的方法是什么?
举个例子:
"123mango abcd mango kiwi peach"
在第一个 mango
的地方拆分,得到:
" abcd mango kiwi peach"
如果你想在最后一个出现的地方拆分,可以查看 在Python中分割字符串并获取冒号后最后一段的值。
5 个回答
38
对我来说,更好的方法是:
s.split('mango', 1)[-1]
...因为如果你要找的内容不在字符串里,你会遇到一个错误,叫做"IndexError: list index out of range
"。
所以说,使用-1
是没问题的,因为出现的次数已经设定为1了。
97
在编程中,有时候我们会遇到一些问题,特别是在使用某些工具或库的时候。这些问题可能会让我们感到困惑,尤其是当我们刚开始学习编程的时候。比如,有人可能会在使用某个特定的功能时,发现它没有按照预期工作。这时候,我们就需要去查找解决方案,看看其他人是怎么处理类似问题的。
在这个过程中,StackOverflow是一个非常有用的资源。它是一个问答网站,程序员们可以在这里提问和回答问题。通过搜索相关的问题,我们可以找到很多有用的建议和解决方案,帮助我们解决编程中的难题。
总之,遇到问题时,不要气馁,利用好网络资源,向其他人请教,很多时候你会发现,别人也曾经遇到过类似的情况,并且已经找到了解决办法。
>>> s = "123mango abcd mango kiwi peach"
>>> s.split("mango", 1)
['123', ' abcd mango kiwi peach']
>>> s.split("mango", 1)[1]
' abcd mango kiwi peach'
847
来自文档:
str.split([sep[, maxsplit]])
这个函数会把字符串里的单词分开,并返回一个单词的列表。你可以用sep来指定分隔符,也就是用什么来切分这些单词。如果你给了maxsplit这个参数,那么最多只会切分maxsplit次(这样返回的列表最多会有
maxsplit+1
个元素)。
s.split('mango', 1)[1]