知识点

Python排序

定义

sorted(iterable) 返回新的排序列表,不会原地修改输入;列表的sort() 原地排序并返回None。两者都可按需要传入排序键或反向排序选项,但适用对象不同:sorted接受可迭代对象,sort是列表方法。

因此a = a.sort() 会把None赋给a,而原列表已经被排序。需要保留原列表时可使用sorted(a)。

例子

sort() 的返回值是None

sort-return.py
a = [3, 1, 2]
b = a.sort()
print(a) # [1, 2, 3]
print(b) # None
c = [3, 1, 2]
d = sorted(c)
print(c) # [3, 1, 2]
print(d) # [1, 2, 3]

交互探索

选择排序方式,比较调用后的原列表和返回值。

排序后原列表和返回值分别是什么?

比较sorted与list.sort的修改和返回值。

正在准备演示…