Python移除字符串中的空白字符

人生苦短,我用 Python

首先来看基本操作

1
2
3
s = 'a b c d'
t = s.replace(' ', '')
print(t)
1
abcd

然后来个稍微有点意思的

把单词间的两个空格替换成一个空格

1
2
3
s = 'Hello  world'
t = s.replace(' ', ' ')
print(t)

Hello world

如果单词间有多个空格,写个循环语句也不难。

再来看个沙雕的

1
2
3
4
5
In [1]: print(s)
Hello world

In [2]: print(s.replace(' ', ' '))
Hello world

什么鬼?原来s='Hello\xa0\xa0world'
等等,\xa0又是什么?
查阅资料,xa0就是 HTML 里的&nbsp,所以这里可以使用

1
s.replace(u'\xa0\xa0', ' ')

进行字符替换

最后,来个简单粗暴的解决方案

1
2
def remove_blank(s):
return ' '.join(s.split())