在notepad++上直接修改copy過來的python 文件的代碼老是提示 縮進不正確,可是我已經明明按規定縮進了 這是為什麼?
01-30
按照拷過來的文件一行行地自己敲,然後運行是沒有問題的。
可以是在原來的文件上改就一定會出現IndentationError: unexpected indent編碼,tag幾個空格,都檢查過了,一直找不到原因。不知道知乎上有沒有人遇到過?
notepad++ python2.6謝謝.
點view- &> show symbol- &> show white space and tab. 默認情況下一個tab相當於8個空格,-- &> 是縮進,-是空格,全部轉換之後看看縮進對不對。。
http://idaemon.net/post-298.html在notepad++中將tab直接轉換為4個空格
首先,你要說明一下你原來的代碼是用什麼文本編輯器上翹的,還是說你直接在python的那個ied上敲的,其次,要說明的是你敲的時候用的全是空格還是tab,最後,還有就是當時你用的輸入法是什麼,要知道,中文輸入法下,即便是你用的英文狀態,可能tab鍵的空格還是不對的。
主要原因是,在notepad++默認是用tab來縮進的,但是在複製python代碼的時候又沒有複製到tab鍵。一個親測解決方法就是,在notepad++ 設置--&>首選項--&>語言 中勾選設置將tab替換為4空格。
然後回到代碼界面寫代碼的時候,再按tab鍵縮進時,就是4個空格組成的縮進。
視圖--&>顯示符號--&>顯示空格和製表符,勾選這個選項,就可以清楚地看到縮進是製表符還是空格了。噹噹當,設置完成,編寫代碼,直接複製代碼到python的解釋器,就可以運行啦。notepad++的話,視圖-&>顯示符號-&>顯示製表符 ,自己瞧瞧唄
檢查自己的縮進規則,建議用雙空格做縮進。
tab 替換為 雙空格。
最好能顯式的顯示出tab和空格字元。容易查錯。可以試試TextFX 插件,能將tab 轉換為空格
今天也遇到這個問題了,不過我發現,如果代碼縮進檢查過沒有問題的話,可能是粘貼時出的問題
見圖
粘成這樣,就會報 invalid syntax …… 所以 獨立成段的代碼,獨立地粘貼…… 我剛剛發現的,如果有更好的方法……就忽略我……推薦閱讀:
※如何用Python做中文詞雲?
※The Magic of Dynamic Language (Introduction Part)
※Kivy中文編程指南:配置修改