gpt4 book ai didi

python - 将类变量添加到定义的类

转载 作者:太空宇宙 更新时间:2023-11-03 13:21:41 24 4
gpt4 key购买 nike

我对这个特殊问题有点困惑,我已经有一段时间遇到这个问题了。问题是我不知道如何正确地将新的类变量添加到已经定义的类中。在我的场景中,我使用 tweepy 模块并使用它的 Streaming API 来获取其中包含“lol”的 Twitter 消息。

到目前为止的代码如下:

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 方法。

最佳答案

使用super调用原始的 __init__,并将文件 I/O 包装在 with 语句中:

auth1 = tweepy.auth.OAuthHandler('CONSUMER KEY','CONSUMER SECRET')
auth1.set_access_token('ACCESS TOKEN','ACCESS TOKEN SECRET')
api = tweepy.API(auth1)

class StreamListener(tweepy.StreamListener):
def __init__(self, f):
super(StreamListener, self).__init__()
self._f = f
def on_status(self, status):
printf(status)
self._f.write(status.text)

with open('twitterMessages.txt', 'w') as outf:
l = StreamListener(outf)
streamer = tweepy.Stream(auth=auth1, listener=l, timeout=3000000000 )
setTerms = ['lol', 'Lol', 'LOL']
streamer.filter(None,setTerms)

关于python - 将类变量添加到定义的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11713201/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com