在这些字符中用分隔符分割字符串的字符

时间:2014-03-27 09:40:34

标签: python string split

我有一个带有这种模式的字符串:在[' ', '.', "#"]加上空格重复一个字符。

例如:# . #

我想根据空格分隔符拆分此字符串(获取['#', '.', ' ', '#']但问题是空格本身就是字符之一,因此split(" ")无法正常工作。

我该怎么做?

4 个答案:

答案 0 :(得分:4)

这里没有必要使用理解 - 你可以使用踩踏片:

>>> text = "# .   #"
>>> text[::2]
'#. #'
>>> list(text[::2])
['#', '.', ' ', '#']

答案 1 :(得分:0)

如果您的字符串始终具有(char,space,char,space,...)序列,则可以执行以下操作:

new_list = [old_string[x] for x in range(0,len(old_string),2)]

>>> old_string = '# # # .   #'
#Run code above
>>> print new_string
['#','#','#','.',' ','#']

答案 2 :(得分:0)

result = []
for c in yourString:
    if c == ' ' and result[-1] == ' ':
        continue
    result.append(c)

答案 3 :(得分:0)

假设每个单词之间只有一个空格分隔符,则下面的单词也可以正常工作

str = "# .   #."
result = []
for index,c in enumerate(str):
    if index%2==0:
       result.append(c)