我是 Python 的初学者,我试图让下面发布的 Python 代码工作,但不幸的是,它没有给我预期或正确的结果。
我正在尝试使用内置方法 sort() 对包含数字的简单列表进行排序,在执行程序后我得到 NONE 作为结果。
请指导我解决这个问题。
Python代码
a=[7,4,0,-5,30,2,11,84,6]
b=a.sort()
print(b)
我是 Python 的初学者,我试图让下面发布的 Python 代码工作,但不幸的是,它没有给我预期或正确的结果。
我正在尝试使用内置方法 sort() 对包含数字的简单列表进行排序,在执行程序后我得到 NONE 作为结果。
请指导我解决这个问题。
Python代码
a=[7,4,0,-5,30,2,11,84,6]
b=a.sort()
print(b)
list.sort
对列表进行就地排序,从而返回None
而是使用sorted
返回排序列表的函数
b = sorted(a)
sort()
是就地排序。它对列表进行排序,但不返回它(它实际上返回None
)。
>>> a=[7,4,0,-5,30,2,11,84,6]
>>> a.sort()
>>> a
[-5, 0, 2, 4, 6, 7, 11, 30, 84]
要单独获取排序列表,请使用sorted()
:
>>> a=[7,4,0,-5,30,2,11,84,6]
>>> b = sorted(a)
>>> b
[-5, 0, 2, 4, 6, 7, 11, 30, 84]
>>> a
[7, 4, 0, -5, 30, 2, 11, 84, 6]
a.sort()
排序a
并返回None
。尝试这个:
a=[7,4,0,-5,30,2,11,84,6]
a.sort()
print(a)
该函数.sort()
不返回它返回的列表对象None
。
如果你看一下这个例子,你可以看到 a 在没有分配给 b 的情况下是如何排序的。
>>> a=[7,4,0,-5,30,2,11,84,6]
>>> a.sort()
>>> a
[-5, 0, 2, 4, 6, 7, 11, 30, 84]