TypeError:不可排序的类型:heapq中的dict()<dict()

安东尼

我正在移植适用于python2的代码。在将其移植时,我unorderable types: dict() < dict()在下一行收到错误

heapq.heappush(colors, color) #this throws error
return heapq.nsmallest(count, colors, key=lambda k: k['shade'])

这些类型是:

`colors` is a <class 'list'>
`color` is a <class 'dict'>

我该如何在python3中进行这项工作?

交际

您根本不需要在heapppush这里调用,因为nsmallest已经处理了堆排序。它在内部创建一个堆并在其上推送项目。nsmallest本身不需要字典是可排序的,因为您指定了key参数。

只需将替换为heappush调用即可colors.append(color)

请注意,尽管您的代码在Python 2中有效,但所做的只是colors在调用之前以任意顺序重新排列了列表nsmallest

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

不可排序的类型:运行OneVsRest分类器中的dict()<= int()

来自分类Dev

python中的字典操作列表-TypeError:不可哈希类型:'dict'

来自分类Dev

Python不可排序类型:函数max(d,lambda ...)调用中的function()> dict()?

来自分类Dev

创建字典时:TypeError:不可哈希类型:'dict'

来自分类Dev

在Python中创建空集:TypeError:“ dict”对象不可调用

来自分类Dev

在Python dict中获取TypeError:无法散列的类型:'list'

来自分类Dev

通过dict中的多个键对dict进行排序

来自分类Dev

Python dict按内部dict值排序

来自分类Dev

为什么 dict(dict) 得到相同的 dict?

来自分类Dev

递归dict

来自分类Dev

在dict值python中访问dict

来自分类Dev

通过dict的dict计数值

来自分类Dev

React JS setState({dict:dict})

来自分类Dev

读取PLIST文件Dict Dict

来自分类Dev

通过dict的dict计数值

来自分类Dev

Python Flask,TypeError:“ dict”对象不可调用

来自分类Dev

TypeError:“ dict_values”对象不可下标

来自分类Dev

TypeError:'dict'对象不可调用python3

来自分类Dev

不了解此TypeError的原因:'dict'对象不可调用

来自分类Dev

分页不接受dict作为数据-不可散列的类型

来自分类Dev

分页不接受dict作为数据-不可散列的类型

来自分类Dev

cherrypy + sqlalchemy + sqlalchemy-datatables:不可散列类型:dict

来自分类Dev

Python SET 到 DICT 导致不可散列的类型:'set'

来自分类Dev

模板中的Django dict

来自分类Dev

KeyError:dict中的nan

来自分类Dev

Python中的Union dict

来自分类Dev

模板中的Django dict

来自分类Dev

dict中“ in”的异常行为

来自分类Dev

dict python中元素的排序

Related 相关文章

热门标签

归档