我有一个元组列表,看起来像这样:

[('abc', 121),('abc', 231),('abc', 148), ('abc',221)]

我想按照元组中的整数值对列表进行升序排序.可能吗?

推荐答案

try 对sorted()使用关键字key.

sorted([('abc', 121),('abc', 231),('abc', 148), ('abc',221)], 
       key=lambda x: x[1])

key应该是标识如何从数据 struct 中检索可比元素的函数.在您的示例中,它是元组的第二个元素,因此我们访问[1].

有关优化,请参阅Jamylak的Response Using itemgetter(1),它实质上是更快的lambda x: x[1]版本.

Python相关问答推荐

如何从维基百科的摘要部分/链接列表中抓取链接?

为什么我的代码会进入无限循环?

是否有方法将现有的X-Y图转换为X-Y-Y1图(以重新填充)?

Snap 7- read_Area用于类似地址的变量

不允许AMBIMA API请求方法

如何让我的Tkinter应用程序适合整个窗口,无论大小如何?

Python -根据另一个数据框中的列编辑和替换数据框中的列值

Pandas :多索引组

Python会扔掉未使用的表情吗?

Gekko:Spring-Mass系统的参数识别

将两只Pandas rame乘以指数

用NumPy优化a[i] = a[i-1]*b[i] + c[i]的迭代计算

所有列的滚动标准差,忽略NaN

将输入聚合到统一词典中

为一个组的每个子组绘制,

让函数调用方程

Python Pandas获取层次路径直到顶层管理

如何杀死一个进程,我的Python可执行文件以sudo启动?

计算空值

Flask运行时无法在Python中打印到控制台