我有一个清单:
L=[2,0,4,5]
我想在不改变 L 本身的情况下创建一个新列表:
K= [0,2,4,5]
但是当我尝试时:
K=L.sort()
print(K)
它什么也不打印,如果我尝试:
print(L)
它出来了:[0,2,4,5]
为什么 K 不是 =[0,2,4,5]?以及如何制作一个新列表 [0,2,4,5] 并且不更改 L?
以下将制作一个排序副本L
并将其分配给K
:
K = sorted(L)
sorted()
是一个内置函数。
K = L.sort()
不起作用的原因是对列表进行了适当sort()
的排序,然后返回。这就是为什么最终被修改并最终成为.None
L
K
None
这是您可以使用的方法sort()
:
K = L[:] # make a copy
K.sort()
您需要使用内置函数sorted
:sorted(L)