我正在尝试在字符串列表中获取一个字符串并删除所有空格,同时用逗号分隔非空格。例如我有字符串:
' XX XX X XXXXXX XX XXXXXXX XXXXX'
并需要将其返回为['XX', 'XX', 'X', 'XXXXXX', 'XX', 'XXXXXXX', 'XXXXX']
. 有什么建议么?
注意:每个段之间的空间量各不相同。
我正在尝试在字符串列表中获取一个字符串并删除所有空格,同时用逗号分隔非空格。例如我有字符串:
' XX XX X XXXXXX XX XXXXXXX XXXXX'
并需要将其返回为['XX', 'XX', 'X', 'XXXXXX', 'XX', 'XXXXXXX', 'XXXXX']
. 有什么建议么?
注意:每个段之间的空间量各不相同。
使用str.split()
,它完全符合您的需要,在任意宽度的空格上分割:
>>> example = ' XX XX X XXXXXX XX XXXXXXXX XXXXX'
>>> example.split()
['XX', 'XX', 'X', 'XXXXXX', 'XX', 'XXXXXXXX', 'XXXXX']
请注意,前导空格也已被删除。
引用文档:
如果sep未指定或 is
None
,则应用不同的拆分算法:连续空格的运行被视为单个分隔符,如果字符串具有前导或尾随空格,则结果将在开头或结尾不包含空字符串。因此,使用分隔符拆分空字符串或仅包含空格的字符串会None
返回[]
.
没有比这更简单的了:
my_string.split()
例子:
>>> ' XX XX X XXXXXX XX '.split()
['XX', 'XX', 'X', 'XXXXXX', 'XX']
只是split()
它:
s = s = ' XX XX X XXXXXX XX XXXXXXXX XXXXX'
print s.split() # prints ['XX', 'XX', 'X', 'XXXXXX', 'XX', 'XXXXXXXX', 'XXXXX']