Python字符串处理:strip、lstrip与rstrip方法详解

Chloe
Chloe
发布时间:2026-10-13| 6人浏览过
原创

本文详细解析Python中用于去除字符串首尾字符的三个核心方法:strip()、lstrip()和rstrip()。文章介绍了各函数的语法结构、参数chars的作用机制,并通过代码实例演示了默认去除空白符及指定字符列表时的不同行为,帮助开发者掌握字符串格式化的最佳实践。

strip系列函数概述

这三种方法的主要目的是删除字符串中特定位置的指定字符。具体而言,strip()用于移除字符串首尾的字符;lstrip()专门用于移除左侧(开头)的字符;而rstrip()则用于移除右侧(结尾)的字符。

在Python中,存在三个用于去除字符串头尾字符或空白符的内置函数,它们分别是:

strip:用于去除字符串头部和尾部的指定字符或空白符,空白符包括换行符(\n)、回车符(\r)、制表符(\t)以及空格(' ')。

lstrip:用于去除字符串头部的指定字符或空白符,同样包括换行符(\n)、回车符(\r)、制表符(\t)以及空格(' ')。

rstrip:用于去除字符串尾部的指定字符或空白符,包括换行符(\n)、回车符(\r)、制表符(\t)以及空格(' ')。

从命名上可以直观理解:r代表right(右),l代表left(左)。strip、rstrip和lstrip是开发过程中常用的字符串格式化手段。

需要特别注意:上述函数仅会删除位于字符串头部或尾部的字符,字符串中间的字符无论是否匹配都不会被删除。

函数语法与参数说明

各函数的语法格式如下:


string.strip([chars])
string.lstrip([chars])
string.rstrip([chars])

参数chars为可选参数。当chars为空或未提供时,默认删除字符串头部和尾部的空白符(包括\n、\r、\t、' ')。

当chars不为空时,该参数被视为一个字符列表。删除操作的前提是字符串的最开头或最结尾包含chars中指定的字符;若包含,则继续处理直至遇到非chars中的字符;若不包含,则不会删除字符串中间的字符。

返回值:返回一个去除了头尾字符(或空白符)的字符串副本,原始字符串string本身不会发生任何改变。

适用Python版本:Python2和Python3均支持,且用法完全一致。

代码实例演示

代码实例展示:

1. 当chars参数为空时,默认行为是删除字符串头尾的空白符(包括'\n', '\r', '\t', ' ')。


>>> name = ' www.jb51.net '
>>> name
' www.jb51.net '
>>> name.strip() #删除头尾空格
'www.jb51.net'
>>> name.lstrip() #删除开头空格
'www.jb51.net '
>>> name.rstrip() #删除结尾空格
' www.jb51.net'

2. 当chars参数不为空时,函数会将chars解析为单个字符的集合,并去除字符串头尾中属于该集合的字符。


>>> name = '-# www.jb51.net #-' 
>>> name
'-# www.jb51.net #-' 
>>> name.strip('#-') #删除开头和结尾的#和-,空格被保留了
' www.jb51.net '
>>> 
>>> name.lstrip('12') #删除开头的#和-
' www.jb51.net #-' 
>>> name.rstrip('12') #删除结尾的#和-
'-# www..jb51.net '

注意:当设置了chars值后,字符串如'#-'会被视为两个独立的字符'#'和'-',因此删除顺序无关紧要。此时,默认的空白符(包括\n、\r、\t、' ')将不再被自动删除,除非显式包含在chars参数中。

以上内容涵盖了Python字符串处理中strip系列函数的核心用法,希望能为读者的学习提供有益参考,欢迎继续支持本站获取更多技术资讯。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。