当前位置:首页>python>Python 6 种非常实用、专门提取子串的方法

Python 6 种非常实用、专门提取子串的方法

  • 2026-10-11 06:02:51
Python 6 种非常实用、专门提取子串的方法

VibeCodingAI围壁扣顶,学习Python从实践到慢慢入门,筑起你的Python知识大厦!知识就是力量,知识改变命运;科技就是生产力,AI就是即战力!

知道程序员为什么叫作码农吗?因为学习写代码就好像种田一样,都是从实践到慢慢入门的一个过程。来吧,跟我一起学习Python从实践到慢慢入门吧!

一、先记住:Python 提取子串的 5 种方法

1.切片 s[start:end](最常用)

2.split () 分割(按符号拆分)

3.partition () 分区(取分隔符前后)

4.find () + 切片(按关键字定位截取)

5.startswith () /endswith () 

6.正则 re(复杂格式提取,最强)

方法 1.[start:end]是最常见、最基础的切片形式

1️⃣ [start:end]用于从序列中截取一段(左闭右开)

lst = [0, 1, 2, 3, 4]lst[1:4]   # [1, 2, 3]

常见用法:

s[:5]      # 前 5 个s[5:]      # 从第 5 个到末尾s[:]       # 复制整个序列

2️⃣ 更完整的切片形式是 [start:end:step]

lst[::2]     # 每隔一个取一个lst[::-1]    # 反转序列lst[5:1:-1]  # 反向切片

3️⃣ Python 内部真正用的是 slice对象

lst[1:5]   # 等价于lst[slice(1, 5)]

方法 2:split () —— 按符号拆分字符串

最常用!比如按 空格、横线、点、斜杠 拆分。

s = "2025-003"parts = s.split("-")  # 按 "-" 切成列表print(parts[0])  # 2025print(parts[1])  # 003

适用场景:

日期 2025-12-31

编号 A001.B02

路径 folder/file.txt

方法 3:partition () —— 分成 前、分隔符、后 三部分

专门用来取某个符号左边 or 右边内容。

s = "abc123def"before, sep, after = s.partition("123")print(before)  # abcprint(after)   # def

比 split 更稳定,只会分成三段。

方法 4:find () /index () + 切片 —— 先找位置,再截取

想提取 某个关键词后面的内容 用这个。

s = "订单号:2025001"pos = s.find(":")   # 找到冒号的位置result = s[pos+1:]   # 从冒号后一位截取到最后print(result)  # 2025001

方法 5:startswith () /endswith () —— 按开头 / 结尾判断

不是直接截取,但配合切片用非常方便。

s = "NO2025003"if s.startswith("NO"):    num = s[2:]  # 从第2位开始取    print(num)   # 2025003
s = "test.txt"if s.endswith(".txt"):    name = s[:-4]    print(name)  # test

方法 6:正则表达式 re —— 最强提取(复杂格式)

适合:

提取所有数字

提取年份

提取邮箱、手机号

提取不规则字符串

import res = "年份2025,序号003"year = re.findall(r"\d+", s)[0]  # 提取所有数字 → 2025print(year)

二、快速总结(记这张表就够)

方法

用途

例子

切片 s[:4]

固定位置截取

取前 4 位

split()

按符号拆分

"2025-003" → ["2025","003"]

partition()

取分隔符前后

"a123b" → a 和 b

find ()+ 切片

找到 “:” 后面内容

找到 “:” 后面内容

正则 re

复杂提取

提取数字、邮箱、日期

日无所获,失落一日,日有所悟,欢欣鼓舞!

所谓千里之行始于足下: 不积跬步,无以至千里。不积小流,无以成江海。骐骥一跃,不能十步。驽马十驾,功在不舍。锲而舍之,朽木不折。锲而不舍,金石可镂。每天进步一点点,成功离我更近一点!

若文章对你有所帮助,请点击右上角或分享, 让你朋友因此而受益!真诚感谢你的关注和推荐!

欢迎交流,有任何问题欢迎留言讨论

AI已经让我们可以直通知识海洋的入口了,一起努力学习吧,解锁自己潜藏的能力!

平时灌溉,才有期待,运气一来,花自盛开!

【特别声明】本公号转载、引用的所有文章、图片、音频、视频文件等资料的版权归版权所有人所有,转载目的在于传递、分享信息给更多人。如果所选内容的作者认为其作品不宜供大家浏览,或不应无偿使用,请及时与我联系,以便迅速采取适当措施,避免给双方造成不必要的损失。

最新文章

随机文章