Notepad++中Python脚本运行出现语法错误:IndentationError: unindent does not match any outer indentation level

使用Notepad++编辑python代码运行遇到了这个问题:

IndentationError: unindent does not match any outer indentation level

查看格式对齐没有问题,好像有个设置,可以显示所有的字符的。 找到了,在: 视图 -> 显示符号 -> 显示空格与制表符

 

然后就看出问题来了: 
原来错误的行数是1580行:

python error line

但是源码的1580行的对齐用的是点点点的空格,是和前面的几行的对齐所用的箭头表示的TAB键,是不匹配的,即代码的对齐,混用了TAB键和空格:

1580 space and tab mixed
而新的Python语法,是不支持的代码对齐中,混用TAB和空格的。所以出现上述错误提示了。

知道原因了,解决起来就简单了: 
去把对应的TAB,都改为空格,统一一下对齐的风格,即可。 
在Notepad++中,去: 
设置->首选项:

设置 首选项

语言->以空格取代(TAB键):

语言 以空格取代Tab

即可实现,对于以后每次的TAB输入,都自动转换为4个空格。

【总结】

Python中遇到IndentationError,以后第一时间就要想到,是不是由于TAB键和空格混搭使用了。

估计很多人也都是此类原因导致的。记得统一一下就好。

posted @ 2019-06-19 18:24  Mandy-Wang  阅读(507)  评论(0编辑  收藏  举报