什么是 strip()?
在 Python 中,strip() 是字符串对象的一个内置方法,用于移除字符串开头和结尾的指定字符(默认为空白字符,如空格、换行符 \n、制表符 \t 等)。
基本语法
str.strip([chars])
chars(可选):指定要删除的字符集合。如果不提供,默认删除所有空白字符。- 返回值:返回一个新字符串,原字符串不会被修改(字符串在 Python 中是不可变的)。
使用示例
1. 默认去除首尾空白
s = " Hello, World! "
result = s.strip()
print(result) # 输出: "Hello, World!"
2. 去除指定字符
s = "###Python###"
result = s.strip("#")
print(result) # 输出: "Python"
3. 去除多种字符
s = "123abc123"
result = s.strip("123")
print(result) # 输出: "abc"
注意:strip() 会移除首尾所有出现在 chars 中的字符,顺序无关。
4. 与 lstrip() 和 rstrip() 对比
s = " text "
print(s.lstrip()) # "text "(仅左)
print(s.rstrip()) # " text"(仅右)
print(s.strip()) # "text"(左右都去)
交互式演示
输入一个字符串并选择要去除的字符,点击“运行”查看结果:
常见误区
strip()不会修改原字符串,而是返回新字符串。- 它只作用于字符串的开头和结尾,中间的字符不会被移除。
- 如果传入多个字符(如
"abc"),表示移除任意属于这些字符的组合,不是移除子串。
应用场景
- 清洗用户输入(如表单数据)
- 处理从文件或网络读取的文本
- 标准化字符串格式(如日志解析)