python排序 key函数完成自定义排序的方法,pythonkey,学习过python计算机


学习过python计算机编程语言的同学们都知道,python本身提供了python 列表排序功能,且它的排序算法是稳定的(key相等的两项在排序后的先后次序不变),那么如何如何通过key函数来进行自定义的排序呢?

下面的python源码示例中,我们就要通过python 列表的list.sort来演示一下,如何通过key函数来进行自定义的排序。

这里说的key函数,其实就是以参加排序的每一项作为输入,而输出则为用来排序的key值。

#python list 排序def my_key1(x):    return x % 10aList = [4, 5, 1, 2, 12, 34, 56, 9 ,80]aList.sort() #默认按升序排列print(aList)aList.sort(reverse = True) #按降序排列print(aList)#www.iplaypy.comaList.sort(key = my_key1) #根据key函数,按照个位数进行升序排列print(aList)def my_key2(x):    return x[1]aList = [(4,'ab'), (56,'c'), (1,'bb'), (102, 'a')]aList.sort(key = my_key2) #按照每个元组的第2分量,即字符串排序print(aList)

编橙之家文章,

评论关闭