Python去除字符串前后空格的几种方法

yipeiwu_com5年前Python基础

其实如果要去除字符串前后的空格很简单,那就是用strip(),简单方便

>>> ' A BC '.strip()
'A BC'

如果不允许用strip()的方法,也是可以用正则匹配的方法来处理。

>>> s1 = ' A BC'
>>> s2 = 'A BC '
>>> s3 = ' A BC '
>>> s4 = 'A BC'
>>> def trim(s):
...   import re
...   if s.startswith(' ') or s.endswith(' '):
...     return re.sub(r"^(\s+)|(\s+)$", "", s)
...   return s
>>> trim(s1)
'A BC'
>>> trim(s2)
'A BC'
>>> trim(s3)
'A BC'
>>> trim(s4)
'A BC'

如果也不用正则匹配的话,还可以借助递归函数来去除前后的空格。

>>> s1 = ' A BC'
>>> s2 = 'A BC '
>>> s3 = ' A BC '
>>> s4 = 'A BC'
>>> def trim(s):
...   if s[0] == " ":
...     return trim(s[1:])   # 如果开首有多个空格的话,递归去除多个空格
...   elif s[-1] == " ":
...     return trim(s[:-1])  # 如果末尾有多个空格的话,递归去除多个空格
...   else:
...     return s
>>> trim(s1)
'A BC'
>>> trim(s2)
'A BC'
>>> trim(s3)
'A BC'
>>> trim(s4)
'A BC'

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

Python异常处理总结

本文较为详细的罗列了Python常见的异常处理,供大家参考,具体如下: 1. 抛出异常和自定义异常 Python用异常对象(exception object)表示异常情况,遇到错误后,会...

matplotlib绘图实例演示标记路径

matplotlib绘图实例演示标记路径

标记路径 演示效果: 实例代码 import matplotlib.pyplot as plt import matplotlib.path as mpath import num...

Python3中的bytes和str类型详解

Python 3最重要的新特性之一是对字符串和二进制数据流做了明确的区分。文本总是Unicode,由str类型表示,二进制数据则由bytes类型表示。Python 3不会以任意隐式的方式...

web.py在模板中输出美元符号的方法

web.py在模板中输出美元符号的方法

由于web.py已经在模板中定义“$”符号位定界符,所以在模板中如果要使用美元符号需要特殊处理。 如我要在模板中输出“$name”字符串: 复制代码 代码如下: $name 报错 $...

python+splinter实现12306网站刷票并自动购票流程

通过python+splinter,实现在12306网站刷票并自动购票流程(无法自动识别验证码)。 此类程序只是提高了12306网站的 <查询> 刷新频率(默认自动查询的刷新...