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

Python内置函数sorted():介绍Python中排序函数sorted()的使用方法及其参数

发布时间:2023-05-28 00:56:07

Python是一种流行的编程语言,灵活性强、可拓展性佳,可以用来开发各种类型的应用程序。其中一个常见的问题是需要对列表中的元素进行排序。Python中有多种方法可以对列表进行排序,其中一种方法就是使用内置的sorted()函数。

sorted()函数可以对列表、元组、字符串、字典和其他可迭代对象进行排序。它返回一个新的、已排序的列表,并不修改原有的列表。sorted()函数的常见使用方式是:

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

参数说明:

- iterable:需要排序的可迭代对象。

- key:可选参数,用于指定一个函数用来为每个元素生成排序依据。例如,sorted(list, key=len)将按照列表中每个元素的字符串长度进行排序。

- reverse:可选参数,默认为False,表示升序排序;如果为True,则表示降序排序。

下面给出一些示例来说明该函数的使用方法。

示例1:对一个简单的列表进行排序并输出

代码:

a = [3, 4, 1, 5, 2]
b = sorted(a)
print(b)

输出:

[1, 2, 3, 4, 5]

示例2:使用 key 参数进行排序

代码:

strings = ['hello', 'world', 'this', 'is', 'an', 'example']
strings.sort(key=len)
print(strings)

输出:

['is', 'an', 'hello', 'world', 'this', 'example']

这里我们通过 key 参数直接对字符串长度进行排序。

示例3:使用 reverse 参数进行排序

代码:

a = [3, 4, 1, 5, 2]
a.sort(reverse=True)
print(a)

输出:

[5, 4, 3, 2, 1]

这里设置了 reverse=True 参数,表示按降序排序。

示例4:对字典进行排序并输出

代码:

d = {'apple': 3, 'banana': 2, 'cherry': 4, 'date': 1}
sorted_dict = sorted(d.items(), key=lambda x: x[1])
print(sorted_dict)

输出:

[('date', 1), ('banana', 2), ('apple', 3), ('cherry', 4)]

这里我们对字典 d 进行排序,key参数指定了lambda匿名函数,按键值对的第二个元素(值)进行排序。

总之,sorted() 函数可以方便地对可迭代对象进行排序,而且具有参数灵活、应用方便等特点。需要注意的是,sorted() 函数返回一个新的排序好的列表,不会改变原始列表。