如何按python降序排序整数列表

Mat*_*4CT 7 python list

我试图以不同的方式解决这个问题,但没有成功.我一直按升序排序,而不是在打印时按降序排序.

ListB = [24, 13, -15, -36, 8, 22, 48, 25, 46, -9]
sorted(ListB, key=int, reverse=True)
print sorted(ListB)
Run Code Online (Sandbox Code Playgroud)

Ósc*_*pez 12

试试这个,它会按降序对列表进行排序(在这种情况下不需要指定键):

listB = [24, 13, -15, -36, 8, 22, 48, 25, 46, -9]
listB.sort(reverse=True) # listB gets modified

print listB
=> [48, 46, 25, 24, 22, 13, 8, -9, -15, -36]
Run Code Online (Sandbox Code Playgroud)

或者,您可以创建新的排序列表:

listB = [24, 13, -15, -36, 8, 22, 48, 25, 46, -9]
listC = sorted(listB, reverse=True) # listB remains untouched

print listC
=> [48, 46, 25, 24, 22, 13, 8, -9, -15, -36]
Run Code Online (Sandbox Code Playgroud)


And*_*ndy 10

您正在打印按升序排序的列表:

print sorted(ListB)
Run Code Online (Sandbox Code Playgroud)

如果您希望它降序,请将您的print语句放在上一行(您将其反转)

print sorted(ListB, key=int, reverse=True)
Run Code Online (Sandbox Code Playgroud)

然后删除最终的打印声明.

例:

>>> ListB = [24, 13, -15, -36, 8, 22, 48, 25, 46, -9]
>>> print sorted(ListB, key=int, reverse=True)
[48, 46, 25, 24, 22, 13, 8, -9, -15, -36]
Run Code Online (Sandbox Code Playgroud)