编写函数:从含字母数字的字符串提取数字并返回升序整数列表
提取字符串中的数字并返回排序后的整数列表
这里有一个简洁的Python函数实现,完全满足你的需求:
def extract_and_sort_digits(input_str): # 筛选出所有数字字符并转换为整数 digit_integers = [int(char) for char in input_str if char.isdigit()] # 对整数列表进行升序排序后返回 return sorted(digit_integers)
测试验证
你可以直接用示例输入测试:
- 输入
"a2fei34bfij1"→ 返回[1, 2, 3, 4] - 输入
"owifjaoei3oij444kfj2fij"→ 返回[2, 3, 4, 4, 4] - 输入
"987321a"→ 返回[1, 2, 3, 7, 8, 9]
代码说明
- 筛选数字:通过列表推导式遍历输入字符串的每个字符,用
char.isdigit()判断是否为数字字符,只保留符合条件的字符。 - 转换整数:将筛选出的每个数字字符直接转换为整数类型。
- 排序返回:使用Python内置的
sorted()函数对整数列表进行升序排序,返回最终结果。
这个实现逻辑清晰,处理效率高,同时能兼容空字符串(返回空列表)等边界情况。
内容的提问来源于stack exchange,提问作者Beatle69
相关产品推荐
相关产品推荐

