Python中sorted()函数的高级用法详解

sorted()函数的作用是对对象进行排序

函数函数格式:

sorted(iterable,key,reverse),key参数可传入一个自定义函数


下边通过具体例子说明sorted的具体用法:

一维数组,直接排序即可:

#!/usr/bin/env python
# -*- coding:utf-8 -*-

# a = [[1, 2, 3], [3, 5, 6], [2, 4, 5]]
a = [4, 6, 2, 7, 1]

print(sorted(a))

二维数组,就需要用到key参数:

(对于二维数组,sorted可使用operator.itemgetter函数命名key值,具体参考 Python中的operator.itemgetter函数

#!/usr/bin/env python
# -*- coding:utf-8 -*-

a = [[1, 2, 3], [3, 5, 6], [2, 4, 5]]


print("按照每个元素的第1个元素排序:", end='')
print(sorted(a, key=lambda x: x[0]))

print("按照每个元素的第2个元素排序:", end='')
print(sorted(a, key=lambda x: x[1]))

print("按照每个元素的第3个元素排序:", end='')
print(sorted(a, key=lambda x: x[2]))

 运行结果:

 

### 回答1: Python sorted函数可以用来对列表进行排序,它接收一个可迭代对象作为参数,返回排序后的新列表。示例如下:myList = [3, 8, 5, 1, 9] sortedList = sorted(myList)# sortedList = [1, 3, 5, 8, 9] ### 回答2: Pythonsorted函数是一个非常有用的函数,它用于对可迭代对象进行排序操作。sorted函数可以接受一个可迭代对象作为参数,并返回一个经过排序的新的列表。 sorted函数的基本用法sorted(iterable, key=None, reverse=False)。其,iterable表示要排序的可迭代对象,key表示排序的基准,reverse表示排序的顺序。 如果不指定key参数,则sorted函数将按照默认的排序方式进行排序。默认情况下,sorted函数会将可迭代对象的元素按照从小到大的顺序进行排序。如果可迭代对象的元素是字符串,那么按照字母的顺序进行排序。 如果想要按照其他的排序方式进行排序,可以使用key参数。key参数接受一个函数作为参数,这个函数将会在排序时作为排序的依据。例如,如果想要按照元素的长度进行排序,可以将len函数作为key参数传入。 另外,reverse参数可以用来控制排序的顺序。如果reverse=True,那么排序的结果将会按照从大到小的顺序排列。 除了传统的列表排序外,sorted函数还可以对字符串进行排序。当对字符串进行排序时,默认情况下会按照字母的顺序进行排序。如果希望使用其他排序方式,仍然可以使用key参数进行指定。 需要注意的是,sorted函数会返回一个新的排序后的列表,原来的可迭代对象不会被改变。如果需要对原来的列表进行排序,可以使用sort方法。 综上所述,Pythonsorted函数是一个用于排序的强大工具,它可以对可迭代对象进行排序,并且可以通过key和reverse参数来控制排序的方式和顺序。它的灵活性和易用性使得它在实际的开发得到了广泛的应用。 ### 回答3: Pythonsorted函数是一个内置函数,用于对可迭代对象进行排序操作。它接受一个可迭代对象作为参数,并返回一个新的已排序的列表。 sorted函数的基本语法如下: sorted(iterable, key, reverse) 其,iterable参数是表示可迭代对象的集合,如列表、元组或字符串等。key参数是一个可选的函数,用于指定排序的键。reverse参数是一个可选的布尔值,默认为False,表示升序排列;如果设为True,则表示降序排列。 示例如下: ``` numbers = [5, 2, 8, 1, 7] sorted_numbers = sorted(numbers) print(sorted_numbers) ``` 输出结果为:[1, 2, 5, 7, 8] 在上面的示例,我们传入了一个列表numbers给sorted函数进行排序。返回结果sorted_numbers是一个新的已排序的列表。 我们也可以指定reverse参数来改变排序的顺序: ``` numbers = [5, 2, 8, 1, 7] sorted_numbers = sorted(numbers, reverse=True) print(sorted_numbers) ``` 输出结果为:[8, 7, 5, 2, 1] 在这个例子,我们将reverse参数设为True,使得sorted函数按降序排列。 此外,我们还可以使用key参数来指定一个函数,根据函数的返回值进行排序: ``` fruits = ['apple', 'banana', 'cherry', 'date'] sorted_fruits = sorted(fruits, key=len) print(sorted_fruits) ``` 输出结果为:['date', 'apple', 'cherry', 'banana'] 在这个例子,我们使用key=len来指定一个函数,表示根据字符串的长度进行排序,从而得到按字符串长度升序排列的结果。 总而言之,Pythonsorted函数是一个非常有用的工具,它可以帮助我们对可迭代对象进行排序操作。我们可以根据需要指定排序的顺序和规则,从而得到我们想要的结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值