Python中遇到IndentationError怎么办?键和空格的区别

【问题】

一个python脚本,本来运行正常的,后来写了几行代码,也保证了每一行都是对齐的脚本错误怎么解决行54,但是运行的时候,出现语法错误:

IndentationError: unindent 不匹配任何外部缩进级别

【解决过程】

1.这个错误的最常见原因实际上是未对齐。但是根据报错信息的行数,我去代码里面看了下,没有问题。

全部使用TAB键脚本错误怎么解决行54,对齐良好,没有没有对齐的行数。

2.认为前面注释的内容影响后面语句的语法,所以也删除前面的注释。

结果又是这个语法错误。

3. 折腾了半天,突然想到显示当前python脚本的所有字符,看看有没有特殊字符。

当前的文本编辑器 Notepad++ 似乎有一个可以显示所有字符的设置。

发现,在:

查看 -> 显示符号 -> 显示空格和制表符

图片[1]-Python中遇到IndentationError怎么办?键和空格的区别-老王博客

然后问题来了:

结果错误的行数是 1580 行:

但是源代码1580行的对齐方式使用了空格点,这与前几行对齐时使用的箭头所指的TAB键不匹配,即代码的对齐方式混合了TAB键和空间:

不支持代码对齐的新 Python 语法混合了 TAB 和空格。于是就出现了上面的错误信息。

知道原因,解决方法很简单:

去把对应的TAB改成空格,统一对齐方式。

在记事本++中,转到:

设置 -> 首选项:

语言 -> 替换为空格(TAB 键):

这样就可以实现了,后续每输入一个TAB,都会自动转换成4个空格。

【总结】

当我在Python中遇到IndentationError时,我会在以后第一次考虑它。是不是因为TAB键和空格混用了。

估计很多人也是这个原因造成的。只记得统一。

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论