我有一个关于在类函数中使用 Python nodule 的问题。
这是我正在尝试创建的 tkinter 应用程序。当用户加载时,文本文件被读入并用于创建 NetworkX 图表。当我调用类中的读入函数时,它无法访问 NetworkX 函数。
导致问题的代码行位于类内的图形对象self.graph
下方,add_node
是我要调用的NetworkX函数。
def __init__ (self, master = None, g = nx.graph, v = 'Some Number')
#Call varibales
self.graph = g
self.value = v
def add_node():
self.graph.add_node(self.value)
谢谢
最佳答案
嗯..按照您当前编写代码的方式,您将类本身 (nx.graph
) 分配给 g
。
这有点错误,您需要实例化 nx.graph
,因此 g
是它的一个实例:
def __init__ (self, master = None, g = nx.graph(), v = 'Some Number')
这样,当您实例化您的类时,g 将成为 nx.graph
的实例。
或者,您可以在将其分配给 self.graph
时实例化它:
def __init__ (self, master = None, g = nx.graph, v = 'Some Number')
#Call varibales
self.graph = g()
self.value = v
希望这有帮助!
关于python - 在类中调用模块函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19720513/