python之replace,strip,split命令
1. replace()
方法
功能:替换字符串中的指定子串
语法:str.replace(old, new[, count])
特点:
- 全部替换(默认)或指定替换次数
- 区分大小写
- 返回新字符串,原字符串不变
示例:
text = "Hello World! World is beautiful."
# 基本替换
print(text.replace("World", "Python"))
# 输出:Hello Python! Python is beautiful.
# 限制替换次数
print(text.replace("World", "Python", 1))
# 输出:Hello Python! World is beautiful.
# 特殊字符替换
print("a-b-c-d".replace("-", "->"))
# 输出:a->b->c->d
2. split()
方法
功能:将字符串分割为列表
语法:str.split(sep=None, maxsplit=-1)
特点:
- 默认按空白符分割
- 可指定分割符和分割次数
- 返回列表类型
示例:
text = "apple,banana,orange,grape"
# 基本分割
print(text.split(","))
# 输出:['apple', 'banana', 'orange', 'grape']
# 限制分割次数
print(text.split(",", 2))
# 输出:['apple', 'banana', 'orange,grape']
# 默认分割(按空格)
print("Python is awesome".split())
# 输出:['Python', 'is', 'awesome']
3. strip()
方法
功能:去除字符串两端指定字符
语法:str.strip([chars])
特点:
- 默认去除空白符
- 可指定多个去除字符
- 有衍生方法
lstrip()
(左)和rstrip()
(右)
示例:
text = " Hello World! "
# 默认去空白
print(text.strip()) # 输出:"Hello World!"
# 指定去除字符
print("**Python**".strip("*")) # 输出:"Python"
# 多字符处理
print("abcHelloabc".strip("abc")) # 输出:"Hello"
# 左右单独处理
print(" Text ".lstrip()) # 输出:"Text "
print(" Text ".rstrip()) # 输出:" Text"
对比总结表
方法 | 主要功能 | 返回值类型 | 是否修改原字符串 | 典型应用场景 |
---|---|---|---|---|
replace | 子串替换 | 字符串 | 否(新字符串) | 文本内容替换、格式转换 |
split | 字符串分割 | 列表 | 否 | 解析CSV数据、分割日志信息 |
strip | 两端字符去除 | 字符串 | 否 | 数据清洗、去除多余空白/标点 |
关键区别说明
- 操作维度:
replace
:基于内容替换split
:基于分隔符重组strip
:基于边界修剪
- 参数特性:
# replace 可链式操作
"abc123".replace("a", "X").replace("1", "Y") # 输出:"XbcY23"
# split 保留空字符串
"a,,b".split(",") # 输出:['a', '', 'b']
# strip 字符集处理
"abcdef".strip("abf") # 输出:"cde"(按字符集合匹配)
- 性能注意:
- 高频操作建议预编译正则表达式
- 大数据量处理优先考虑生成器表达式
- 复杂文本处理建议结合使用:
" Name: John; Age:25 ".strip().split(";")
# 输出:['Name: John', ' Age:25']
掌握这三个方法可以应对80%的日常字符串处理需求,配合使用能实现更复杂的数据清洗和文本解析功能。