Python中的 sorted 函数以及 operator.itemgetter 函数

operator.itemgetter 函数
operator.itemgetter 函数返回的是索引,而非一个值。需要作用于对象上才能获得值。

a = [1, 2, 3]
b = operator.itemgetter(1)
print(b(a))
# 2
b = operator.itemgetter(1, 0)
print(b(a))
# (2, 1)

sorted 函数
sorted(iterable[, cmp[, key[, reverse]]])

  • iterable 指定要排序的 list 或者 iterable
  • cmp 指定排序时进行比较的函数,可以是一个函数或是 lambda 表达式
  • key 指定排序的指标。
student = [('john', 'a', 15), ('jane', 'b', 12), ('dave', 'b', 10)]
sorted(students, key = lambda s: s[2])
sorted(student, key = itemgetter(2))
  • reverse 默认升序

你可能感兴趣的:(Python中的 sorted 函数以及 operator.itemgetter 函数)