【发布时间】:2021-06-22 13:26:59
【问题描述】:
我正在尝试在 python 中实现 DFS Graph,我是新手,我是 Python 编程。我在此代码中导入 defaultdict 包。我遇到了这个错误,但我没有弄清楚这个错误:
Traceback(最近一次调用最后一次): 文件“/Users/abdullahsheikh/PycharmProjects/Implement_dfs/main.py”,第 26 行,在 DFS_graph=DFS_() init 中的文件“/Users/abdullahsheikh/PycharmProjects/Implement_dfs/main.py”,第 6 行 self.graphlist = defaultdict(self) TypeError: 'module' 对象不可调用
代码示例是:
import defaultdict
class DFS_:
def __init__ (self):
self.graphlist = defaultdict(self)
def AddEdge(self,n,v):
self.graphlist[n].append(v)
def DFSfun(self,v,visited):
visited[v] = True
print(v,end= ' ')
for i in self.graphlist[v]:
if visited[i]==False:
self.DFSfun(i,visited)
def _dfs(self,v):
visited = [False] * (max(self.graphlist)+1)
self.DFSfun(v,visited)
DFS_graph=DFS_()
l = int(input("Enter total number of Edges"))
for i in range(l):
firstpoint = int(input("Enter first point"))
secondpoint = int(input("Enter Second point"))
DFS_graph.AddEdge(firstpoint,secondpoint)
startpoint = int(input("Enter starting point: "))
DFS_graph._dfs(startpoint)
【问题讨论】:
-
导入看起来错误。你在使用
collections.defaultdict类吗? -
是的,我使用 defaultdict,我使用 Pycharm IDE。
标签: python python-3.x list graph pycharm