欢迎访问宙启技术站
智能推送

Python中的sorted函数-解释Python中的sorted函数及其用法。

发布时间:2023-06-22 17:31:53

Python中的sorted函数是一个有用的内置函数,可以用来对各种数据结构进行排序。从简单的列表到复杂的嵌套对象,该函数可以适用于多种数据类型。

语法

sorted(iterable, key=none, reverse=False) 

使用方法

Python的sorted函数可以与列表、元组、字典等不同的数据类型一起使用。下面是一些常见的用法。

1. 对列表排序

列表是Python中最常见的数据类型之一,而sorted函数在对列表进行排序时最常用。以下是对一个简单的整数列表排序的示例:

numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]

sorted_numbers = sorted(numbers)

print(sorted_numbers)

输出结果为:

[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]

可以看到,sorted函数已经将列表中的数字按升序排列。

2. 对元组排序

Python中的元组也可以使用sorted函数进行排序。以下是一个简单的字符串元组排序的示例:

fruits = ('apple', 'banana', 'orange', 'grape', 'kiwi', 'pear')

sorted_fruits = sorted(fruits)

print(sorted_fruits)

输出结果为:

['apple', 'banana', 'grape', 'kiwi', 'orange', 'pear']

可以看到,sorted函数已经将元组中的字符串按字母顺序排序。

3. 对字典排序

字典是Python中另一个常用的数据类型,sorted函数不仅可以根据键或值对字典进行排序,还可以根据字典中的元素排序。以下是以值排序的示例:

d = {1: 'one', 2: 'two', 3: 'three', 4: 'four', 5: 'five'}

sorted_d = sorted(d.items(), key=lambda x: x[1])

print(sorted_d)

输出结果为:

[(1, 'one'), (4, 'four'), (5, 'five'), (3, 'three'), (2, 'two')]

可以看到,sorted函数已经按字母顺序对字典中的值进行了排序。

4. 自定义排序函数

除了使用内建函数排序之外,还可以使用自定义函数来规定如何根据特定条件对数据进行排序。以下是一个根据电影发布日期排序的示例:

movies = [("The Shawshank Redemption", 1994), 

          ("The Godfather", 1972), 

          ("The Godfather: Part II", 1974), 

          ("The Dark Knight", 2008), 

          ("12 Angry Men", 1957)]

def sort_by_year(movie):

    return movie[1]

sorted_movies = sorted(movies, key=sort_by_year)

for movie in sorted_movies:

    print(movie[0], "-", movie[1])

输出结果为:

12 Angry Men - 1957

The Godfather - 1972

The Godfather: Part II - 1974

The Shawshank Redemption - 1994

The Dark Knight - 2008

总结

Python中的sorted函数是一个灵活和有用的函数,可在各种情况下对数据进行排序。使用内建函数排序,或使用自定义函数根据自己的特定需求排序。当需要对数据进行排序时,请记住使用该函数。