lambda表达式在sort中的使用

文章目录

  • 一、lambda表达式一般用法
  • 二、 lambda表达式在sort中的使用
    • sort基本用法
    • key可以为一个函数
      • 使用lambda表达式

一、lambda表达式一般用法

  • Blueprint
lambda argument: manipulate(argument)
  • Example
add = lambda x, y: x + y
print(add(3, 5))
# Output: 8

二、 lambda表达式在sort中的使用

sort基本用法

  • sort()函数用来对list数据类型进行排序。reverse为True时,从大到小进行排序;默认为False,从小到大进行排序。
  • sort函数在原list进行排序,sorted函数返回一个新的list
list.sort(key=..., reverse=...)#sort函数在原list进行排序
sorted(list, key=..., reverse=...)#sorted函数返回一个新的list

key可以为一个函数

  • 此时传入key函数的参数为待排序的类型中的一个元素
# take second element for sort
def takeSecond(elem):
    return elem[1]

# random list
random = [(2, 2), (3, 4), (4, 1), (1, 3)]

# sort list with key
random.sort(key=takeSecond)

# print list
print('Sorted list:', random)


# output
Sorted list: [(4, 1), (2, 2), (1, 3), (3, 4)]

使用lambda表达式

a = [(1, 2), (4, 1), (9, 10), (13, -3)]
a.sort(key=lambda x: x[1])

print(a)
# Output: [(13, -3), (4, 1), (1, 2), (9, 10)]

这里传入lambda表达式形参x的实参为列表a中的每一个元素

你可能感兴趣的:(Python)