Python按字符串的数字部分对给定的字符串列表进行排序
当需要按字符串的数字部分对给定的字符串列表进行排序时,使用正则表达式和'findall'方法。
示例
以下是相同的演示-
import re
def my_num_sort(my_str):
return list(map(int, re.findall(r'\d+', my_str)))[0]
my_list = ["pyth42on", '14is', '32fun', '89to', 'lea78rn']
print("名单是:")
print(my_list)
my_list.sort(key=my_num_sort)
print("结果是:")
print(my_list)输出结果名单是: ['pyth42on', '14is', '32fun', '89to', 'lea78rn'] 结果是: ['14is', '32fun', 'pyth42on', 'lea78rn', '89to']
解释
所需的包被导入到环境中。
定义了一个将字符串作为参数的方法。
它使用“findall”方法来查找特定模式的匹配项。
使用“map”方法将其转换为字符串,然后转换为“列表”。
这作为方法的输出返回。
在该方法之外,一个字符串列表被定义并显示在控制台上。
该列表根据之前定义的方法根据键进行排序。
此列表显示为控制台上的输出。
热门推荐
10 生日贺卡手绘祝福语简短
11 幽默的伴郎祝福语简短
12 桔梗配什么祝福语简短
13 给哥哥高考祝福语简短
14 经典新婚祝福语英文简短
15 歌词朋友结婚祝福语简短
16 给你祝福语毕业老师简短
17 旗袍文案婚礼祝福语简短
18 欢天喜地盖新房祝福语简短