Python字符串切片正确实现:如何提取逗号分隔字符串的末尾数值
提取字符串中最后一个逗号后的数值
方法1:字符串分割(最简洁直观)
直接按逗号分割字符串,取最后一个元素并清理空格、转换类型:
s = "1, 2, 3, 4, 5, 6" last_number = int(s.split(',')[-1].strip()) print(last_number) # 输出 6
不管数字是一位数还是三位数,split(',')都会把每个数值(含前后空格)拆分成列表元素,[-1]直接取最后一项,strip()去除多余空格后转成整数即可。
方法2:使用切片(针对你提到的切片需求)
先定位最后一个逗号的位置,再通过切片提取后续内容:
s = "1, 2, 3, 4, 5, 6" last_comma_pos = s.rfind(',') last_number = int(s[last_comma_pos + 1:].strip()) print(last_number) # 输出 6
rfind(',')会从字符串末尾反向查找第一个逗号的索引,从该索引+1的位置开始切片就能拿到最后一个数值的字符串,后续处理和方法1一致。
边界情况兼容
两种方法都能处理特殊场景:
- 字符串只有单个数值(如
"123"):split(',')[-1]直接返回原字符串,rfind(',')返回-1,切片s[-1+1:]等价于s[0:],都能正确提取数值。 - 数值前后空格不固定(如
"1, 234, 56"):strip()会自动清理所有前后空白字符。
内容的提问来源于stack exchange,提问作者Dronikon
相关产品推荐
相关产品推荐

