python类型错误:Node和Nod的实例之间存在“<”

2024-04-20 07:28:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python的新手,我遇到了这个错误,我尝试了一些方法来解决它,但是找不到任何有效的方法

Type Error: '<' between instances of Node and Node

Tags: andofinstances方法nodetype错误error
1条回答
网友
1楼 · 发布于 2024-04-20 07:28:29

您需要编写special methods进行比较。heapq将在内部对添加到堆中的元素执行比较,您的代码失败,因为添加的元素是一个对象,而默认情况下,对象无法执行比较

我们需要定义特殊方法或为了比较两个物体

例如,在您的程序中,您可以在类节点下添加如下所示的uu lt_uuu方法,以比较类节点的freq属性

def __lt__(self, other):
    return self.freq < other.freq

现在,您可以执行<;对象的比较,类似地,您可以为>;编写>;=<;=或者==比较

相关问题 更多 >