都知道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