python之replace,strip,split命令详解
目录
- 1. replace() 方法
- 2. split() 方法
- 3. strip() 方法
- 对比总结表
- 关键区别说明
- 总结
1. replace() 方法
功能:替换字符串中的指定子串
语法:str.replace(old, new[, count])
特点:
- 全部替换(默认)或指定替换次数
- 区分大小写
- 返回新字符串,原字符串不变
示例:
text = "Hello World! World is beautiful.http://www.devze.com" # 基本替换 print(text.replace("World", "python")) # 输出:Hello Python! Python is beautiful. # 限制替换次数 print(text.replace("World", javascript"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 | 字符php串分割 | 列表 | 否 | 解析CSV数据、分割日志信息 |
strip | 两端javascript字符去除 | 字符串 | 否 | 数据清洗、去除多余空白/标点 |
关键区别说明
操作维度:
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%的日常字符串处理需求,配合使用能实现更复杂的数据清洗和文本解析功能。
总结
以上为个人经验,希望能给编程大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。
精彩评论