python中strip(),lstrip(),rstrip()函数的讲解

本文详细解析了Python中字符串的strip、lstrip和rstrip方法的使用技巧,包括如何去除字符串两端指定字符,以及它们在不同参数下的表现。通过实例演示,帮助读者掌握这些常用字符串操作方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文来自 neu_张康 的优快云 博客 ,
全文地址请点击:https://blog.youkuaiyun.com/csdn15698845876/article/details/73469234?utm_source=copy

1. strip()

它的函数原型:string.strip(s[, chars]),它返回的是字符串的副本,并删除前导和后缀字符。(意思就是你想去掉字符串里面的哪些字符,那么你就把这些字符当参数传入。此函数只会删除头和尾的字符,中间的不会删除。)如果strip()的参数为空,那么会默认删除字符串头和尾的空白字符(包括\n,\r,\t这些)。

#这里注意字符串a的两端都有一个空白字符,字符a和n之间也有一个。
a=" \rzha ng\n\t "
print(len(a))

b=a.strip()
print(b)
print(len(b))

输出:
11
zha ng
6

当参数为空的时候,两端的空白符,\r,\n,\t都被删除了,但是中间的那个空白符没动。我们看下当有参数的时候是什么情况:

a="rrbbrrddrr"
b=a.strip("r")
print(b)

输出:bbrrdd

中间的字符r没动,两端的都删除了,现在来看看我们传入多个字符参数的情况:

a="aabcacb1111acbba"
print(a.strip("abc"))
print(a.strip("acb"))
print(a.strip("bac"))
print(a.strip("bca"))
print(a.strip("cab"))
print(a.strip("cba"))

输出:
1111
1111
1111
1111
1111
1111

从这个代码看出什么了吗?可能和你想的不一样,当你传的参数不管是“abc”还是abc的其他排列形式,这都不重要,重要的是函数只知道你要删除的字符是”a”,”b”,”c”。函数会把你传的参数拆解成一个个的字符,然后把头尾的这些字符去掉。明白了吧!

2. lstrip()和rstrip()

这两个函数和上面的strip()基本是一样的,参数结构也一样,只不过一个是去掉左边的(头部),一个是去掉右边的(尾部)。

a=" zhangkang "
print(a.lstrip(),len(a.lstrip()))
print(a.rstrip(),len(a.rstrip()))

输出:
('zhangkang ', 10)
(' zhangkang', 10)

当没有参数的时候,一个去掉了左边的空白,一个去掉了右边的空白。当传参数的时候:

a="babacb111baccbb"
print(a.lstrip("abc"))
print(a.rstrip("abc"))

输出:
111baccbb
babacb111
### Python `strip()` 函数使用说明 `strip()` 是 Python 中用于字符串操作的内置方法之一,主要用于移除字符串开头和结尾处的特定字符(默认为空白字符)。以下是关于此函数的具体解释及其示例。 #### 基本功能 `strip()` 方法可以用来清除字符串两端的空白字符或其他指定字符。如果未提供任何参数,则默认删除的是空格、制表符 `\t` 和换行符 `\n` 等空白字符[^1]。 #### 参数描述 该函数接受一个可选参数,即要移除的目标字符集合。这个集合是一个字符串形式,其中包含所有需要被移除的字符。注意,它不会影响字符串中间的内容,仅作用于首尾部分[^2]。 #### 返回值 执行完毕后,`strip()` 将返回一个新的字符串对象,在原基础上进行了清理工作;原始字符串保持不变[^3]。 #### 示例代码展示 以下是一些具体的实例演示如何运用 `strip()`: ```python # 移除两侧空格 s = " Hello World! " result = s.strip() print(result) # 输出:"Hello World!" # 自定义去除字符集 example_string = "***Good Morning***" cleaned_string = example_string.strip("*") print(cleaned_string) # 输出:"Good Morning" # 测试多个相同字符的情况 test_str = "aaaaabbbbccccdddaaaa" final_result = test_str.strip("abcd") print(final_result) # 输出:空串 "" ``` 上述第一个例子展示了如何去掉多余的空白区域;第二个则表明当指定了特殊符号作为待删项时的效果;第三个进一步验证即使存在重复项目也能正常运作。 另外还有针对单侧修剪的需求场景分别有对应的变种版本——`lstrip()`负责左边部分而`rstrip()`专注于右侧调整[^5]。 #### 特殊情况考虑 值得注意的一点是,假如给定的字符串完全由设定好的要去掉的那些组成的话,那么最终得到的结果将会是个长度为零也就是所谓的“空串”。就像最后一个测试案例那样显示出来的结果一样。 ### 总结 综上所述,掌握了这些基础知识之后就可以灵活应用 pythonstrip 功能来进行高效的数据预处理啦!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值