今天在做安卓自动化测试的时候发下,一段Python脚本运行就报错,代码只有简单的几行,而且能定位到是第几行报错的,但是就是看不出语法错误,真是奇了怪了,但是遇到问题了,还是必须得解决掉,就开始了如下的分析。
首先分析这个单词“IndentationError”,“Indentation”就是缩格的意思,因此大概和缩格有关系。文章源自陈学虎-https://chenxuehu.com/article/2017/07/6894.html
在看网友的帖子中,我关注到了一句话:文章源自陈学虎-https://chenxuehu.com/article/2017/07/6894.html
文章源自陈学虎-https://chenxuehu.com/article/2017/07/6894.html
在python里头,空格和tab是区分开的,二者混在一起就会报错,要么只用空格,要么只用tab。文章源自陈学虎-https://chenxuehu.com/article/2017/07/6894.html
文章源自陈学虎-https://chenxuehu.com/article/2017/07/6894.html
因为我是在Notepad++中编辑的,因此果断设置,查看显示全部字符后的效果,设置方式如下:文章源自陈学虎-https://chenxuehu.com/article/2017/07/6894.html
文章源自陈学虎-https://chenxuehu.com/article/2017/07/6894.html
视图 -> 显示符号 -> 显示空格与制表符文章源自陈学虎-https://chenxuehu.com/article/2017/07/6894.html
文章源自陈学虎-https://chenxuehu.com/article/2017/07/6894.html
然后我们就能惊喜的发现错误了在哪里了,首先,我们来看看运行脚本时候的报错:文章源自陈学虎-https://chenxuehu.com/article/2017/07/6894.html
然后我们去看下编辑器中的代码选择:
小伙伴们,是不是看出点什么端倪来了,不管怎么样,我们先做做调整,看效果如何。
我们使用Notepad++的功能自动去解决这个问题,为了保证以后能得到统一的设置:
设置->首选项->语言,勾选“以空格取代”
然后我将有问题的位置做出调整,运行脚本,发现问题就消失了。
以后请记住,在代码开发中,我们推荐是用4个空格进行缩进,不要使用TAB缩进代码,为了规范,也为了减少出现乱七八糟的问题。
评论