2013-11-01 99 views
1

我有一個關於在類函數中使用Python結節的問題。在類中調用模塊函數

這是爲我嘗試創建的tkinter應用程序。當用戶讀入文本文件並用於創建NetworkX圖形時。當我在該類中調用read in函數時,它無法訪問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) 

謝謝

回答

1

嗯..你的代碼目前正在編寫方式,你指定的類本身(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 

希望這有助於!

+0

謝謝。這工作。我需要實例化,而不是僅僅把它變成類本身。 – Cytrix

+0

是的,如果這能解決你的問題,請接受。 – aIKid