当前位置: 首页 > article >正文

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两端字符去除字符串数据清洗、去除多余空白/标点

关键区别说明

  1. 操作维度
    • replace:基于内容替换
    • split:基于分隔符重组
    • strip:基于边界修剪
  2. 参数特性
# replace 可链式操作
"abc123".replace("a", "X").replace("1", "Y")  # 输出:"XbcY23"

# split 保留空字符串
"a,,b".split(",")  # 输出:['a', '', 'b']

# strip 字符集处理
"abcdef".strip("abf")  # 输出:"cde"(按字符集合匹配)
  1. 性能注意
    • 高频操作建议预编译正则表达式
    • 大数据量处理优先考虑生成器表达式
    • 复杂文本处理建议结合使用:
"  Name: John; Age:25  ".strip().split(";")  
# 输出:['Name: John', ' Age:25']

掌握这三个方法可以应对80%的日常字符串处理需求,配合使用能实现更复杂的数据清洗和文本解析功能。


http://www.kler.cn/a/582081.html

相关文章:

  • STM32之硬件SPI
  • tomcat应用的作用以及安装,以及tomcat软件的开机自启动。
  • Redis Redis介绍、安装 - Redis客户端
  • windows环境DBGPT0.7.0安装部署说明
  • C# 实现软件开机自启动
  • 网络-如果第一次握手旧的序列号先到怎么办?
  • SQL 注入 (C++向)
  • 前端 - npm - - npm安装依赖时 -d -s -g的区别
  • ​【C++设计模式】第十七篇:中介者模式(Mediator)
  • Ubuntu下MySQL的安装与使用(一)
  • Tweak Power:全方位电脑系统优化的高效工具
  • 第85期 | GPTSecurity周报
  • 详细介绍 Jupyter nbconvert 工具及其用法:如何将 Notebook 转换为 Python 脚本
  • golang从入门到做牛马:第十二篇-Go语言数组:数据的“有序集合”
  • 数据类设计_图片类设计之3_半规则图类设计(前端架构基础)
  • 官宣 | Fluss 0.6 发布公告
  • 基于Python+Vue开发的电影订票管理系统源码+运行步骤
  • Android 蓝牙工具类封装:支持经典蓝牙与 BLE,兼容高版本权限
  • 【redis】数据类型之布隆过滤器
  • 存储过程和自定义函数在银行信贷业务中的应用(oracle)