You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python3.5中split函数用法:拆分字符串时将7保留至第二部分

解决Python中按数字7拆分字符串并让第二部分包含7的问题

嘿,我懂你的需求——你希望用数字7当分隔符拆分字符串,而且拆分后的第二部分必须包含这个7,但默认的split()方法会直接把分隔符丢掉,确实让人头疼。别担心,这里有两个精准适配你需求的办法:

方法一:用str.partition()(推荐,简洁直观)

Python的字符串方法partition()天生就是干这个的!它会把字符串分成三个部分:分隔符之前的内容、分隔符本身、分隔符之后的内容。我们只需要把后两部分合并,就能得到第二部分带7的结果。

举个例子:

s = "hello7world"
parts = s.partition('7')
# parts的结果是 ('hello', '7', 'world')
final_result = [parts[0], parts[1] + parts[2]]
print(final_result)  # 输出: ['hello', '7world']

这个方法的好处是不需要额外导入模块,代码简单易懂,而且正好满足你“分隔符属于第二部分”的要求。

方法二:用正则表达式re.split()

如果你需要更灵活的拆分规则(比如以后要匹配类似的数字分隔符),可以用re.split(),通过捕获组来保留分隔符,再把它和后面的内容合并。

记得要加maxsplit=1,这样只会拆分一次,避免多次拆分带来的混乱:

import re

s = "test7example"
split_result = re.split(r'(7)', s, maxsplit=1)
# split_result的结果是 ['test', '7', 'example']
final_result = [split_result[0], split_result[1] + split_result[2]]
print(final_result)  # 输出: ['test', '7example']

这里的正则(7)是一个捕获组,re.split()会把捕获到的分隔符也放到结果列表里,我们只需要把第二和第三个元素拼接起来就OK了。

这两个方法都完美适配你的需求,区别就是partition()更轻量,正则则适合更复杂的场景,你可以根据自己的情况选~

内容的提问来源于stack exchange,提问作者Samyak Jain

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:42:43