[关闭]
@CQUyh 2022-09-02T03:24:25.000000Z 字数 546 阅读 163

sorted 和 sort 排序函数

Python


1.sort

属于list的内部函数,和pop,remove一样,所以没有返回值,而是直接改变列表值。

key的作用就是提供一个自定义的排序函数,sorted()会将待排序序列的每一个元素都传入key 函数,并按照返回值的大小排序。值不会变,只是根据函数返回大小来排序,不改变列表本身。

  1. if __name__ == '__main__':
  2. def func(x):
  3. return -x
  4. a = [5,2,16,4]
  5. a.sort()
  6. print(a) #[2, 4, 5, 16]
  7. a.sort(reverse=True)
  8. print(a) #[16, 5, 4, 2]
  9. a.sort(key=func)
  10. print(a) #[16, 5, 4, 2]

2.sorted 自带函数和sum一样,对象是可迭代序列(列表,集合等),有返回值,不会改变原始列表。

和sort一样有reverse和key两个参数

  1. if __name__ == '__main__':
  2. def func(x):
  3. return -x
  4. a = [5,2,16,4]
  5. print(sorted(a))
  6. #[2, 4, 5, 16]
  7. print(sorted(a,reverse=True))
  8. #[16, 5, 4, 2]
  9. print(sorted(a,key=func))
  10. #[16, 5, 4, 2]
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注