0
我創建了一個python腳本來創建一個IRC客戶端。從對象中調用父類方法的最佳方法
我現在想給它添加一個聊天機器人功能。
因此,我的IRC客戶端的python腳本有很多方法,並且看起來相當龐大,所以我想也許最好創建一個chatbot對象,它可以從IRC客戶端讀取消息事件併發送適當的消息。我正在以正確的方式思考這個問題?
class IRCClient:
#client code
myGreetingBot = GreetingBot()
def SendToIRC(self, message):
# send code implemented here
# getting here from the created object is a problem
while 1:
# this main loop continously checks a readbuffer for messages and puts them into a buffer
#event driven method calling with IRCClient
if ("JOIN" == buffer[1]):
myGreetingBot.process(message)
class GreetingBot():
def process():
#getting here isn't a problem
self.SendMessage()
def SendMessage():
# here I want to call the SendToIRC() function of the class that created this object
很抱歉,如果不是很清楚,但也許它顯示了)我想實現和b)我做錯了。
這很難說,你想用碎縮進做什麼。將代碼粘貼回來,然後選擇它並按下[編輯]工具欄上的[{}'按鈕以縮進所有適當的4個空格 – mhlester
代碼將不會運行,我只是在我考慮問題時才寫它。我真的只是要求最好的方式來擴展我的基類的funcionality。也許我只需要閱讀更多關於python的繼承。 – user3406725
雖然我明白你的意思,但我不是父類。您需要將客戶端傳遞給GreetingBot()的構造函數(或adda屬性並設置它)並將其存儲在成員中,然後您可以通過該成員調用其上的任何方法 –