Python報錯:IndentationError: expected an indented block

來源:互聯網
上載者:User

標籤:分享   div   ted   格式   error:   exp   ati   outer   複合   

sum = 0for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:sum = sum + xprint(sum)

代碼如上,但是運行報錯:

 

發現是因為少了縮排,改正為如下:

sum = 0for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:    sum = sum + xprint(sum)

就沒得問題了。

運行為:

 但是若在改正代碼格式:

sum = 0for x in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:    sum = sum + x    print(sum)

輸出為:

在這裡就能看出來:Python 最具特色的就是用縮排來寫模組!

縮排的空白數量是可變的,但是所有代碼塊語句必須包含相同的縮排空白數量,這個必須嚴格執行。

IndentationError: unindent does not match any outer indentation level錯誤表明,你使用的縮排方式不一致,有的是 tab 鍵縮排,有的是空格縮排,改為一致即可。

如果是 IndentationError: unexpected indent 錯誤, 則 python 編譯器是在告訴你"Hi,老兄,你的檔案裡格式不對了,可能是tab和空格沒對齊的問題",所有 python 對格式要求非常嚴格。

因此,在 Python 的代碼塊中必須使用相同數目的行首縮排空格數。

建議你在每個縮排層次使用 單個定位字元 或 兩個空格 或 四個空格 , 切記不能混用

縮排相同的一組語句構成一個代碼塊,我們稱之程式碼群組。

像if、while、def和class這樣的複合陳述式,首行以關鍵字開始,以冒號( : )結束,該行之後的一行或多行代碼構成程式碼群組。

我們將首行及後面的程式碼群組稱為一個子句(clause)。

所以上兩個以不同的縮排運行出來的結果不一樣。因為縮排不同代碼塊不同。

 

Python報錯:IndentationError: expected an indented block

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.