Python拆分连续分隔符

Cha*_*l72 12 python string split

splitPython中的默认方法将连续空格视为单个分隔符.但是,如果指定分隔符字符串,则不会折叠连续分隔符:

>>> 'aaa'.split('a')
['', '', '', '']
Run Code Online (Sandbox Code Playgroud)

折叠连续分隔符最简单的方法是什么?我知道我可以从结果列表中删除空字符串:

>>> result = 'aaa'.split('a')
>>> result
['', '', '', '']
>>> result = [item for item in result if item]
Run Code Online (Sandbox Code Playgroud)

但是有更便捷的方式吗?

orl*_*rlp 16

这很简洁,你可以得到:

string = 'aaa'
result = [s for s in string.split('a') if s]
Run Code Online (Sandbox Code Playgroud)

或者你可以切换到正则表达式:

string = 'aaa'
result = re.split('a+', string)
Run Code Online (Sandbox Code Playgroud)


Ass*_*vie 11

您可以使用正则表达式作为分隔符,如下所示:

re.split(pattern, string[, maxsplit=0, flags=0])
Run Code Online (Sandbox Code Playgroud)

来自文档.