我是靠谱客的博主 沉默超短裙,最近开发中收集的这篇文章主要介绍python可哈希_Python,TypeError:不可哈希类型:'list',觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我在程序中收到以下错误:追溯:

Traceback (most recent call last):

File "C:Python33ArchivePythonGrafosAlpha.py", line 126, in

menugrafos()

File "C:Python33ArchivePythonGrafosAlpha.py", line 97, in menugrafos

zetta = Beta.caminhografo(grafo,va,vb)

File "C:Python33ArchivePythonGrafosBeta.py", line 129, in caminhografo

if ([vo, a]) in vat == ([vo,vq]) in vat:

TypeError: unhashable type: 'list'

该程序旨在做一个工作正常的邻接表,然后继续搜索顶点va和vb之间是否存在路径。我在collection / defaultdict中使用了列表字典,因此我可以正确地附加相邻的顶点。

问题出在程序末尾创建列表之后的if子句中。我找不到一种方法,可以将if子句与dict正确配合使用,以查找顶点之间是否存在有效路径。grafo也是一个图类。

这是代码:

class graph:

v = 0

a = 0

node = []

class vertex:

ta = []

adj = {}

def caminhografo(grafo, va, vb):

vat = defaultdict(list)

i = 0

a = 0

z = 0

vo = int(va)

vq = int(vb)

vz = int(va)

vw = int(vb)

x = len(grafo.node)

if vz < vw:

for vz in range (vw+1):

a = 0

x = len(grafo.node)

for a in range (x):

if [int(vz),int(a)] in grafo.node:

vat[vz].append(a)

if vz > vw:

while vz > vw:

a = 0

x = len(grafo.node)

for a in range (x):

if[int(va),int(a)] in grafo.node:

vat[vz].append(a)

vz = vz - 1

a = 0

x = len(grafo.node)

print(vat)

for a in range (x):

if ([vo, a]) in vat == ([vo,vq]) in vat:

print("""

==============================================

Existe Caminho

==============================================

""")

break

elif ([vo,a]) in vat:

vo = a

else:

print("""

==============================================

Não Existe Caminho

==============================================

""")

break

感谢您的协助。

最后

以上就是沉默超短裙为你收集整理的python可哈希_Python,TypeError:不可哈希类型:'list'的全部内容,希望文章能够帮你解决python可哈希_Python,TypeError:不可哈希类型:'list'所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部