Python 如何去掉字符串中的空格/空白符?

关注者
7
被浏览
13,000
登录后你可以
不限量看优质回答 私信答主深度交流 精彩内容一键收藏

我们来介绍几种去除字符串中空格的方法。它们基本上可以分为两类,一类是 Python 字符串对象 str 的不同方法,比如 str.split() str.replace() ;另外一类是 Python 正则表达式方法。

1.移除字符串开头的空格/空白符

str.lstrip() 方法

>>> demo = " Demo  Example  "
>>> demo.lstrip()
"Demo  Example  "

在这里, str.lstrip() 方法去掉了字符串开头字符中由输入变量指定的字符。假如没有输入变量的话,它就会去除字符串开头的所有空白符号。

Python 正则表达式方法

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"^\s+", "", demo)
"Demo  Example  "

^ 指定了只匹配字符串开头的字符, \s 的意思是匹配各种不同的空白符,比如空格、制表符、回车等,或者说,它等同于后面的字符集合- [ \t\n\r\f\v] + 会去尽量多的匹配连续的空白符。

2.移除字符串末尾的空格/空白符

str.rstrip() 方法

str.lstrip() 方法可用来移除字符串开头的空白符对应的方法- str.rstrip() 可以用来移除字符串末尾的空白符。

>>> demo = " Demo  Example  "
>>> demo.lstrip()
" Demo  Example"

Python 正则表达式方法去除字符串中的空格

同样的,你也可以通过正则表达式来去除字符串末尾的空白符。

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"\s+$", "", demo)
" Demo  Example"

python基础知识资料分享给大家~~~ 获取方式:

【资料免费领】| 程序员必备指南+Python学习资料,0元抱走!

3.Python 正则表达式方法去除字符串开头和结尾的空白符

str.strip() 方法去除字符串开头和结尾的空白符

str.strip() 方法是 str.lstrip() str.rstrip() 方法的结合,它可以来去掉字符串开头和结尾的空白符。

>>> demo = " Demo  Example  "
>>> demo.strip()
"Demo  Example"

Python 正则表达式方法 sub() 去除字符串开头和结尾的空白符

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"^\s+|\s+$", "", demo)
"Demo  Example"

4.去掉字符串中所有的空格/空白符

Python 字符串替代方法 str.replace()

假如我们要去掉字符串中所有的空白符,就没有必要检查空白符的位置了,那就可以直接用 str.replace() 方法来用空字符 "" 来替代字符串中所有的空白符。

>>> demo = " Demo  Example  "
>>> demo.replace(" ", "")
'DemoExample'

Python 正则表达式 sub() 方法去掉字符串中所有的空格/空白符

正则表达式中,用 \s+ 来匹配的所有的空白符。

>>> import re
>>> demo = " Demo  Example  "
>>> re.sub(r"\s+", "", demo)