gpt4 book ai didi

python-2.7 - 在 Python 3 中使用 lambda 进行排序

转载 作者:行者123 更新时间:2023-12-03 11:23:33 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Python 2 dict_items.sort() in Python 3

(2 个回答)


6年前关闭。




这段代码适用于 Python 2.7,我如何在 Python 3 中完成这项工作?

arestas = dict()
edges = arestas.items()
edges.sort(key=lambda x: x[1])

返回的错误是:

AttributeError: 'dict_items' 对象没有属性 'sort'

谢谢!

最佳答案

这里的问题是 dict.items()返回 dictionary view在 Python 3 中。就好像你调用了 dict.viewitems() 在 Python 2 中。

首先将字典 View 转换为列表,或者使用 sorted() function :

edges = list(arestas.items())
edges.sort(key=lambda x: x[1])

或者
edges = arestas.items()
edges = sorted(edges, key=lambda x: x[1])

由于后者包括对 list 的隐式转换。无论如何,除非您仍然需要访问未排序的列表,否则它是更好的选择。

关于python-2.7 - 在 Python 3 中使用 lambda 进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32503831/

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