13

我有一个清单:

         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?

4

2 回答 2

20

以下将制作一个排序副本L并将其分配给K

K = sorted(L)

sorted()是一个内置函数。

K = L.sort()不起作用的原因是对列表进行了适当sort()的排序,然后返回。这就是为什么最终被修改并最终成为.NoneLKNone

这是您可以使用的方法sort()

K = L[:] # make a copy
K.sort()
于 2012-11-26T21:34:34.293 回答
5

您需要使用内置函数sortedsorted(L)

于 2012-11-26T21:34:28.097 回答