|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
今天学习得时候看到一个排序方法,但是第一个参数我还是没明白。这里请教一下各位。
【sort()】
用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。
> list.sort( key=None, reverse=False)
> * key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
> * reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
举例:# 获取列表的第二个元素
def takeSecond(elem):
return elem[1]
# 列表
random = [(2, 2), (3, 4), (4, 1), (1, 3)]
# 指定第二个元素排序
random.sort(key=takeSecond)
# 输出类别
print ('排序列表:', random)
# 排序列表:[(4, 1), (2, 2), (1, 3), (3, 4)]
这个key的值是一个函数,然后这个函数的默认参数就是random这个列表,然后函数中elem[1]表示的应该是:random中的元素:(3,4),然后按照这个进行排序,这里就没明白为什么按照这个排序,最后得到的列表会是“ 排序列表:[(4, 1), (2, 2), (1, 3), (3, 4)]”,???
请教一下各位,兄嘚,谢谢了。
elem[1] 表示按照 random 列表元素的第二个元素排列:[(4, 1), (2, 2), (1, 3), (3, 4)]。
|
|