我有一个带有这种模式的字符串:在[' ', '.', "#"]
加上空格重复一个字符。
例如:# . #
。
我想根据空格分隔符拆分此字符串(获取['#', '.', ' ', '#']
但问题是空格本身就是字符之一,因此split(" ")
无法正常工作。
我该怎么做?
答案 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)