私はこの特定の問題について少し混乱しており、かなり前からこの問題に悩まされてきました。問題は、新しいクラス変数を既に定義されているクラスに適切に追加する方法がわからないことです。私のシナリオでは、「lol」を含む Twitter メッセージを取得するために、tweepy モジュールとそのストリーミング API を使用しています。
これまでのコードは次のとおりです。
import tweepy
class StreamListener(tweepy.StreamListener):
#I want to add some code here in order to open a file
def on_status(self, status):
try:
#Rather than printing here I would like to write to the file
print status.text
except:
self.textOut.close()
auth1 = tweepy.auth.OAuthHandler(XXXXX, XXXX)
auth1.set_access_token(XXXXX, XXXXX)
api = tweepy.API(auth1)
textOut = open('twitterMessages.txt')
l = StreamListener()
streamer = tweepy.Stream(auth=auth1, listener=l, timeout=3000000000 )
setTerms = ['lol', 'Lol', 'LOL']
streamer.filter(None,setTerms)
私がしたコメントを見てください。最初にファイルを開いてファイルに書き込みたい。問題は、init メソッドを作成するときに、元のinitメソッドをオーバーライドしているように見えることです。