如何最好地将多个空格替换为一个(在python中)?

Ale*_*lex 1 python

在python中,我有例如以下字符串:

a = "Sentence  with     weird    whitespaces"
Run Code Online (Sandbox Code Playgroud)

我想要相同的字符串,扩展的空格只用一个替换,所以最后的字符串会读取

 'Sentence with weird whitespaces'
Run Code Online (Sandbox Code Playgroud)

我自己找到了一个解决方案,但有更好/更短的解决方案吗?

' '.join([x for x in a.split(' ') if len(x)>0])
Run Code Online (Sandbox Code Playgroud)

Kei*_*wan 8

您可以使用:

import re
a = re.sub(' +',' ',a)
Run Code Online (Sandbox Code Playgroud)

  • @AlexanderD'Attore + 上面的符号检查是否连续出现 1 个或多个空格。 (2认同)

Wil*_*ard 8

" ".join(a.split())
Run Code Online (Sandbox Code Playgroud)

从您的问题的副本之一中提取此内容