TypeError: not supported between instances of 'treeNode' and 'treeNode'

问题

TypeError: ‘<’ not supported between instances of ‘treeNode’ and ‘treeNode’

原因:

python3 和python2 版本的问题。

解决方法:

bigL = [v[0] for v in sorted(headerTable.items(), key=lambda p: p[1])]
改为:加了一个维度[0]

bigL = [v[0] for v in sorted(headerTable.items(), key=lambda p: p[1][0])]

原因:
我们看headerTable.items()的数据类型就知道了,他有两个维度。

headerTable.items()== 
dict_items([('r', [3, <__main__.treeNode object at 0x000001EE76813788>]), 
('z', [5, <__main__.treeNode object at 0x000001EE76813748>]), 
('x', [4, <__main__.treeNode object at 0x000001EE76813808>]), 
('y', [3, <__main__.treeNode object at 0x000001EE768137C8>]), 
('s', [3, <__main__.treeNode object at 0x000001EE76813888>]), 
('t', [3, <__main__.treeNode object at 0x000001EE768138C8>])])

你可能感兴趣的:(python3)