>>> a = [i for i in range(3,0,-1)]
>>> a
[3, 2, 1]
>>> b = [i for i in range(3,0,-1)].sort()
>>> b
>>> c = sorted(i for i in range(3,0,-1))
>>> c
[1, 2, 3]
b 变成 None,这没有意义。
最佳答案
sort()
方法就地运行并返回 None
。您必须首先存储列表,然后对其调用排序。对于b,首先创建列表,然后对其进行排序,sort()
的返回值被分配给b,并且原始列表丢失。
关于python - 为什么 sort() 函数不能应用于列表理解?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55565319/