91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • Python中出現IndentationError:unindent does not match any outer indentation level錯誤怎么辦

Python中出現IndentationError:unindent does not match any outer indentation level錯誤怎么辦

發布時間:2020-08-03 09:13:31 來源:億速云 閱讀:150 作者:小豬 欄目:開發技術

小編這次要給大家分享的是Python中出現IndentationError:unindent does not match any outer indentation level錯誤怎么辦,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。

【問題】 
一個python腳本,本來都運行好好的,然后寫了幾行代碼,而且也都確保每行都對齊了,但是運行的時候,卻出現語法錯誤: 

IndentationError: unindent does not match any outer indentation level

【解決過程】 

1.對于此錯誤,最常見的原因是,的確沒有對齊。但是我根據錯誤提示的行數,去代碼中看了下,沒啥問題啊。 
都是用TAB鍵,對齊好了的,沒有不對齊的行數啊。 
2.以為是前面的注釋的內容影響后面的語句的語法了,所以把前面的注釋也刪除了。 
結果還是此語法錯誤。 
3.后來折騰了半天,突然想到了,把當前python腳本的所有字符都顯示出來看看有沒有啥特殊的字符。

當前用的文本編輯器Notepad++,好像有個設置,可以顯示所有的字符的。 
找到了,在: 
視圖 -> 顯示符號 -> 顯示空格與制表符

Python中出現IndentationError:unindent does not match any outer indentation level錯誤怎么辦

然后就看出問題來了: 
原來錯誤的行數是1580行:

Python中出現IndentationError:unindent does not match any outer indentation level錯誤怎么辦

但是源碼的1580行的對齊用的是點點點的空格,是和前面的幾行的對齊所用的箭頭表示的TAB鍵,是不匹配的,即代碼的對齊,混用了TAB鍵和空格:

Python中出現IndentationError:unindent does not match any outer indentation level錯誤怎么辦
而新的Python語法,是不支持的代碼對齊中,混用TAB和空格的。所以出現上述錯誤提示了。

知道原因了,解決起來就簡單了: 
去把對應的TAB,都改為空格,統一一下對齊的風格,即可。 

在Notepad++中,去: 

設置->首選項:

Python中出現IndentationError:unindent does not match any outer indentation level錯誤怎么辦

語言->以空格取代(TAB鍵):

Python中出現IndentationError:unindent does not match any outer indentation level錯誤怎么辦

即可實現,對于以后每次的TAB輸入,都自動轉換為4個空格。

【總結】

Python中遇到IndentationError,以后第一時間就要想到,是不是由于TAB鍵和空格混搭使用了。

估計很多人也都是此類原因導致的。記得統一一下就好。

下面是其他網友的補充

今天在網上copy的一段代碼,代碼很簡單,每行看起來該縮進的都縮進了,運行的時候出現了如下錯誤: 

Python中出現IndentationError:unindent does not match any outer indentation level錯誤怎么辦

【解決過程】 

1.對于此錯誤,最常見的原因是,的確沒有縮進。根據錯誤提示的行數,去代碼中看了下,看起來沒有什么問題呀,都有縮進,而且語法也沒有錯誤呀。

2.仔細研究了下代碼,發現真的看不出什么問題,突然想到了,把當前python腳本的所有字符(包括空格和tab字符)都顯示出來看看到底有沒有縮進或者是其他特殊的字符。

當前用的文本編輯器Notepad++,有個設置,可以顯示所有的字符的。

在: 

視圖 –> 顯示符號 –> 顯示空格與制表符 

這樣就可以看到我們Python代碼的到底有沒有該縮進的都縮進了。

最終發現代碼報錯原因還真是出在這里,錯誤提示的這行看起來是縮進了,實際上確沒有縮進,這就是問題的根源所在。

發現了個問題,發現copy過來的Python代碼都沒有進行縮進,當我們copy別人的代碼時,縮進這點需要額外注意。不要看起來代碼縮進了就感覺ok了,實際上是沒有縮進的。

總結

使用(多行注釋)三個引號的注釋, 一定要注意縮進要與上下文保持一致

即同層次代碼是幾個縮進,就幾個縮進。

報上面這個錯誤的原因是自己在注釋'''test'''前面只有三個空格導致。

同層代碼是4個空格,偏偏要寫8個空格,也會報錯的。 

對應的單行注釋##, 則對縮進沒有任何要求。

可能是三個引號是屬于字符串的原因

看完這篇關于Python中出現IndentationError:unindent does not match any outer indentation level錯誤怎么辦的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

包头市| 枝江市| 仲巴县| 治县。| 安龙县| 襄城县| 宁海县| 客服| 阿瓦提县| 仲巴县| 大名县| 沙田区| 象山县| 娄烦县| 兰州市| 云浮市| 青铜峡市| 南安市| 海口市| 灵台县| 壶关县| 衢州市| 文化| 买车| 娱乐| 芒康县| 阆中市| 枝江市| 靖宇县| 无锡市| 时尚| 平利县| 长岛县| 肥西县| 阿图什市| 甘洛县| 扬州市| 安顺市| 大丰市| 田东县| 新竹市|