如何从Python字符串列表中提取数字?
提取字符串列表末尾数字生成新列表
给定列表:
List1 = ["mohit23", "jimmy24"]
需要得到输出:
[23, 24]
下面是两种可行的实现方式:
方法一:正则表达式匹配
利用正则表达式匹配字符串末尾的连续数字,再转换为整数:
import re List1 = ["mohit23", "jimmy24"] result = [int(re.search(r'\d+$', item).group()) for item in List1] print(result) # 输出: [23, 24]
\d+$表示匹配字符串结尾的一个或多个数字,re.search找到匹配内容后转成整数,再通过列表推导式生成结果列表。
方法二:遍历字符提取数字
从字符串末尾反向遍历,收集数字字符直到遇到非数字,再转换为整数:
List1 = ["mohit23", "jimmy24"] result = [] for item in List1: num_part = "" # 从后往前遍历字符 for char in reversed(item): if char.isdigit(): num_part = char + num_part else: break result.append(int(num_part)) print(result) # 输出: [23, 24]
内容的提问来源于stack exchange,提问作者Mohit Mishra
相关产品推荐
相关产品推荐

