都知道python是对格式要求很严格的,写了一些python可是也没发现他严格在哪里,今天遇到了IndentationError: unexpected indent错误我才知道他是多么的严格。
之后遇到了IndentationError: unexpected indent你就要知道python编译器是在告诉你“Hi,老兄,你的文件里格式不对了,多是tab和空格没对齐的问题,你须要检查下tab和空格了”。
在windows上你能够用editplus看的,虽然我不知道怎么显示出tab,可是他能显示你的文件是没对齐的,我是在ubuntu上编写python的。我用的是vim,你能够设置下vim中tab用空格替换,我在前一篇文章里写过关于这个设置的问题,我如今在补充一下,以前是在系统目录下设置的,如今我要在home目录下设置;
首先 cd ~(到你的home目录)
而后 ls -a(显示隐藏的文件)
找到.vimrc(记得是带个点前缀的)
而后编辑这个文件
找到以下的命令:
16 set autoindent
17 set smartindent
19 set tabstop=4
20 set shiftwidth=4
21 set softtabstop=4
22 set noexpandtab
而后在set tabstop=4前面加上set expandtab同时你须要把set noexpandtab这个注释掉,怎么注释呢,就是加个双引号。我没试过直接注释不加set expandtab,我想也能够(难道默认是expandtab)。这样你能够放心使用VIM了。
固然我并非想就这样完事,我其实想看下个人代码到底哪里会有问题呢,就须要看下他的格式了,主要是看tab,这个能够一样在刚才那个文件里设置,在刚才设置的下面好比说
在set softtabstop=4下面加上一句set list。这句就可让你的vim打开的文件显示出tab了,固然也许你以为显示的很差看,他显示的样子是“^I”一个数字键6上那个符号和一个大写的I表示一个tab,这个不会显示出空格。他还会显示出段落的起始符^和终止符$,若是不知道这2个符号能够看下正则表达式。
以上2点设置之后,我想之后你就不会遇到IndentationError: unexpected indent这个很烦人的错误了。
以上的set命令均可以单独使用,可是只对当前打开的vim有效,你能够按下shift加冒号,而后输入set XXX,回车而后就有效果了,可是你要再次进入编辑模式才能看到。
但愿分享给每一个写python的人。python