python - 在python中对列表进行排序

标签 python list sorting absolute-value

我有这个列表

[1,-5,10,6,3,-4,-9]

但现在我希望列表像这样排序:

[10,-9,6,-5,-4,3,1]

如你所见,无论每个数字的符号是什么,我都想从高到低排序,但保持符号,是否清楚?

最佳答案

使用 abs 作为 sorted 函数或 list.sort 的键:

>>> lis = [1,-5,10,6,3,-4,-9]
>>> sorted(lis, key=abs, reverse=True)
[10, -9, 6, -5, -4, 3, 1]

关于python - 在python中对列表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19199984/

相关文章:

python - 删除 pandas 数据框中所有元素的最佳方法是什么,其中一列中的值在另一列中存在不止一次?

python - 如何拒绝来自 Python 的 Bitbucket 拉取请求?

python - 当使用另一个列表附加数学列表时,如何使第二个列表与第一个列表的长度相同?

ios - 如何使用NSPredicate以与完整NSArray相同的顺序对NSSet子集进行排序?

python - 如何将 myapp 放置在 mac osx 上通过 py2app 开发的应用程序位置

python - 如何从 bash 脚本访问 python 返回值

python - 在 python 2.7 中搜索重复值列表

python - 计算不同的字典值

python - 将列表与另一个列表 python 进行比较时检查列表中缺少的内容

java - 如何在 WebDriver 中对 ArrayList 中的 WebElement 进行排序?