use*_*310 10 python sorting list
我有一个清单:
L=[2,0,4,5]
Run Code Online (Sandbox Code Playgroud)
我想创建一个新的列表而不改变L本身:
K= [0,2,4,5]
Run Code Online (Sandbox Code Playgroud)
但是当我尝试:
K=L.sort()
print(K)
Run Code Online (Sandbox Code Playgroud)
它没有打印,如果我尝试:
print(L)
Run Code Online (Sandbox Code Playgroud)
它出来了:[0,2,4,5]
为什么K不是= [0,2,4,5]?如何创建新列表[0,2,4,5]并且不更改L?
NPE*_*NPE 16
以下将生成一个排序副本L并将其分配给K:
K = sorted(L)
Run Code Online (Sandbox Code Playgroud)
sorted() 是一个内置功能.
原因K = L.sort()不起作用是sort()对列表进行排序,并返回None.这就是L最终被修改并K最终成为现实的原因None.
以下是您可以使用的方法sort():
K = L[:] # make a copy
K.sort()
Run Code Online (Sandbox Code Playgroud)