python中出现IndentationError:unindent does not match any outer indentation level
今天在网上copy的一段代码。代码非常easy,每行看起来该缩进的都缩进了。执行的时候出现了例如以下错误:
【解决过程】
1.对于此错误,最常见的原因是,的确没有缩进。
依据错误提示的行数,去代码中看了下,看起来没有什么问题呀,都有缩进。并且语法也没有错误呀。
2.细致研究了下代码,发现真的看不出什么问题。突然想到了,把当前python脚本的全部字符(包含空格和tab字符)都显示出来看看究竟有没有缩进或者是其它特殊的字符。
当前用的文本编辑器Notepad++,有个设置,能够显示全部的字符的。
在:
视图 –> 显示符号 –> 显示空格与制表符
这样就能够看到我们Python代码的究竟有没有该缩进的都缩进了。
终于发现代码报错原因还真是出在这里,错误提示的这行看起来是缩进了。实际上确没有缩进,这就是问题的根源所在。
发现了个问题。发现copy过来的Python代码都没有进行缩进,当我们copy别人的代码时,缩进这点须要额外注意。不要看起来代码缩进了就感觉ok了,实际上是没有缩进的。