gpt4 book ai didi

python - 将元组从小到大排序

转载 作者:行者123 更新时间:2023-11-28 21:07:48 25 4
gpt4 key购买 nike

我正在尝试将以下“元组”列表从最小到最大排序:

tuple1:

[('Bread', 3.1), ('Cheese', 8.2), ('Milk', 6.1), ('Pasta', 4.5) ...

我喜欢按整数升序对元组进行排序 - 我尝试了以下操作:

>>> sortedTuple = tuple1.sort(key=lambda x: (x[0],int(x[1]))

但是,我收到以下输出:

None

我的预期输出是:

[('Bread', 3.1), ('Pasta', 4.5), ('Milk', 6.1), ('Cheese', 8.2)...

最佳答案

您可以使用 sorted 内置函数。

from operator import itemgetter

In [268]: tuple1
Out[268]: [('Bread', 3.1), ('Cheese', 8.2), ('Milk', 6.1)]

In [270]: res = sorted(tuple1, key=itemgetter(1))

In [271]: res
Out[271]: [('Bread', 3.1), ('Milk', 6.1), ('Cheese', 8.2)]

key=itemgetter(1)key=lambda x:x[1] 的含义相同,也就是说将使用元组的第二个元素作为排序的键。但它应该会更快。

如果你愿意,这里有一个关于使用 itemgetter(x) 而不是 [x] 的讨论: Why should I use operator.itemgetter(x) instead of [x]?

关于python - 将元组从小到大排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41059122/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com