python - 如何折叠连续的定界符?

标签 python string split

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

>>> 'aaa'.split('a')
['', '', '', '']

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

>>> result = 'aaa'.split('a')
>>> result
['', '', '', '']
>>> result = [item for item in result if item]

但是有没有更方便的方法呢?

最佳答案

这是尽可能简洁的:

string = 'aaa'
result = [s for s in string.split('a') if s]

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

string = 'aaa'
result = re.split('a+', string)

关于python - 如何折叠连续的定界符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6478845/

相关文章:

python - 空心圆符号中的误差线

c - 用字符串的一部分填充二维数组

c# - 将 double 格式化为字符串

java - 如何根据id对某个对象进行分组?

java - 如何在java正则表达式中对两个字符进行分组?

python - 我想获取不包括零的行的最小数字索引

python - 有向图中的最大简单循环

python - django1.8-上传Excel插入数据库时​​如何手动追加信息

javascript - 在 JavaScript 中查找两个字符串之间的差异

java - 如何拆分像 {200,200} 这样的字符串