Python – 根据字符串的数字部分排序给定的字符串列表


当需要根据字符串的数字部分对给定的字符串列表进行排序时,定义了一个使用正则表达式、`map` 方法和 `list` 方法来显示结果的方法。

示例

以下是演示:

import re
print("The regular expression package has been imported successfully.")

def my_digit_sort(my_list):
   return list(map(int, re.findall(r'\d+', my_list)))[0]

my_list = ["pyt23hon", "fu30n", "lea14rn", 'co00l', 'ob8uje3345t']

print("The list is : " )
print(my_list)

my_list.sort(key=my_digit_sort)
print("The list has been sorted based on the pre-defined method..")

print("The resultant list is : ")
print(my_list)

输出

The regular expression package has been imported successfully.
The list is :
['pyt23hon', 'fu30n', 'lea14rn', 'co00l', 'ob8uje3345t']
The list has been sorted based on the pre-defined method..
The resultant list is :
['co00l', 'ob8uje3345t', 'lea14rn', 'pyt23hon', 'fu30n']

解释

  • 将所需的包导入环境。

  • 定义了一个名为 `my_digit_sort` 的方法,它接受一个列表作为参数。

  • 它使用正则表达式和 `re` 包的 `findall` 方法查找单词中存在的数字。

  • 这将映射到列表中的所有元素。

  • 这被转换为列表并作为输出返回。

  • 在方法外部,定义了一个包含整数的字符串列表,并在控制台上显示。

  • 此列表根据预定义的方法进行排序。

  • 此输出显示在控制台上。

更新于:2021年9月13日

854 次浏览

开启你的职业生涯

完成课程获得认证

开始学习
广告