-2

我在我的 Python shell 命令行中输入了这段代码,我收到一条错误消息,指出“IndentationError:unindent 与任何外部缩进级别都不匹配”。

 from tweepy import Stream
    from tweepy import OAuthHandler
    from tweepy.streaming import StreamListener

    ckey='W1VPPrau42ENAWP1EnDGpQ'
    csecret='qxtY2rYNN0QT0Ndl1L4PJhHcHuWRJWlEuVnHFDRSE'
    atoken='1577208120-B8vGWIquxbmscb9xdu5AUzENv09kGAJUCddJXAO'
     asecret='tc9Or4XoOugeLPhwmCLwR4XK8oUXQHqnl10VnQpTBzdNR'

     class listener(StreamListener):

    def on_data(self,data):
        print data
        return True

    def on_error(self,status):
        print status




        auth=OAuthHandler(ckey,csecret)
        auth.set_access_token(atoken,asecret)
        twitterStream=Stream(auth,listener())
        twitterStream.filter(track=["car"])
4

2 回答 2

2

直接在解释器中输入时必须注意缩进。每个缩进最好使用空格键和计数(例如 4 个空格)。

我没有运行你的代码,但看起来你需要如下缩进:

from tweepy import Stream
from tweepy import OAuthHandler
from tweepy.streaming import StreamListener

ckey = 'W1VPPrau42ENAWP1EnDGpQ'
csecret = 'qxtY2rYNN0QT0Ndl1L4PJhHcHuWRJWlEuVnHFDRSE'
atoken = '1577208120-B8vGWIquxbmscb9xdu5AUzENv09kGAJUCddJXAO'
asecret = 'tc9Or4XoOugeLPhwmCLwR4XK8oUXQHqnl10VnQpTBzdNR'

class listener(StreamListener):

    def on_data(self, data):
        print data
        return True

    def on_error(self, status):
        print status

auth = OAuthHandler(ckey, csecret)
auth.set_access_token(atoken, asecret)
twitterStream = Stream(auth, listener())
twitterStream.filter(track=["car"])`
于 2013-11-01T09:51:01.733 回答
1

你的缩进很遥远。

asecret = ...应该不缩进一个空格。

你的班级缩进很远。它应该看起来像:

class listener(StreamListener):
    ...

    def on_data(self,data):
        ...

    def ...

如果是这样,那么您可能会混合制表符和空格。不要那样做。

于 2013-11-01T07:12:17.853 回答