Python 缩进错误:缩进级别不匹配
我刚开始学习 python
,
我遇到了这个错误:
Error :
def on_data(self,data):
^
IdentationError : unindent does not match any outer indentation level
我在 windows 8.1
上用 notepad++
编写代码。我不明白为什么会出现这个错误,我已经注意到缩进和空格的问题。
我想把数据保存到 self.file 里。
这是我的代码:
from tweepy import OAuthHandler
from tweepy.streaming import StreamListener
from tweepy import Stream
import tweepy
import time
class StdOutListener(StreamListener):
def __init__(self,file):
self.file = file
def on_data(self, data):
print data
self.file.write(data)
return True
def on_error(self, status):
print status
def main() :
file = open('work.txt','w')
listn = StdOutListener(file)
consumer_key=""
consumer_secret=""
access_token=""
access_token_secret=""
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
#api = tweepy.API(auth)
#filename=open('helloworld.txt','r')
#f=filename.readlines()
#filename.close()
#for line in f:
# api.update_status(line)
stream = Stream(auth, listn)
stream.filter(track=['lol'])
file.close()
7 个回答
1
确保 """ 的注释只需要一个制表符的距离,而不是五个空格。
4
我之前也遇到过同样的问题,特别是在我尝试从网上的编辑器复制几行代码时,代码中的空格没有被正确识别为“制表符”或“空格”。
不过,解决这个问题其实很简单。我只需要把那段代码里的所有空格都删掉,然后再用正确的制表符重新排版,这样问题就解决了。
14
你有混合的缩进格式(空格和制表符)
在 Notepad++ 中
将制表符设置改为4个空格
进入 设置 -> 首选项 -> 制表符设置 -> 用空格替代
修复当前文件的混合缩进
全选所有内容 CTRL+A
点击 TAB 一次,这样每行都会增加一个缩进
按 SHIFT + TAB 来去掉多余的缩进,这样会把所有的制表符替换成4个空格。