什麼是縮進錯誤? 如何解決 Python 中的縮進錯誤?

已發表: 2021-12-22

作為一種解釋型、高級和通用的編程語言,Python 越來越多地獲得讚譽,成為編程世界中最有前途、最領先和新興的平台。 如果沒有其巧妙的設計理念,Python 什麼都不是。

一個關鍵特徵是強調顯著使用顯著縮進來增強代碼可讀性。 下面突出顯示的插圖簡潔地將 Python 設計哲學的堡壘概括為 20 句格言,由長期 Pythoneer 的 Tim Peters 暗示,他最終成為 Python 最多產和最頑強的核心開發人員之一。

目錄

Python 簡介

在深入研究 Python 中縮進錯誤背後的具體技術之前,我們必須熟悉 Python 的基礎知識和縮進的必要性。 這樣做不僅可以幫助您更好地了解錯誤本身,還可以深入了解程序員通過有效選擇解決錯誤而獲得的優勢。

Python 作為一種多範式編程語言的誕生可以追溯到 1991 年。從那時起,程序員不斷調整 Python 的核心線框,以適應一系列用戶特定的需求,例如數據科學以及 Web 和移動開發。

現在,我們都知道,試圖理解難以辨認的筆跡是非常棘手的,而且常常令人憤怒。 同樣,不可讀和非結構化的代碼是簡單明了的,在編程世界中是不可接受的。 這就是 PEP 或 Python 增強提案的概念來拯救程序員的地方。 Python 社區的 PEP 類似於為普通大眾共享的 Google Doc。

這是一個不斷更新的描述性任務,它讓 Python 編程社區全面了解特性和更新,以提高代碼的可讀性。 PEP 8 由 Guido van Rossum、Barry Warsaw 和 Nick Coghlan 在 2001 年編寫,被稱為 Python 的樣式代碼。

從世界頂級大學學習軟件開發課程獲得行政 PG 課程、高級證書課程或碩士課程,以加快您的職業生涯。

什麼是縮進?

眾所周知,Python 是一種過程語言,因此,Python 中的縮進用於將單個代碼分隔為可識別的功能相似語句組。 大多數編程語言,包括 C、C++ 和 JAVA,都使用花括號“{}”來定義代碼塊。 Python 標誌著這種設計的偏離,並且更喜歡使用縮進。

縮進的語法

根據 PEP 8 空白倫理概述的約定,每個新的迭代(即代碼塊)都應該以縮進開始,並且代碼的結尾應該是第一行沒有縮進。 執行縮進的常見做法是四個空格或一個製表符,其中空格在很大程度上優於製表符。 禁止混合使用空格和製表符。

Python中縮進錯誤的原因

“縮進錯誤:需要縮進塊”不區分用戶。 無論您是 Python 編程的新手還是經驗豐富的軟件開發人員,這一定會在某個時間點發生。 在 Python 中,由於您鍵入的所有代碼都是通過正確的空格排列的,因此如果在代碼中的任何實例中,您的縮進不正確,則整個代碼不會運行,並且解釋器將返回錯誤函數。 要確切了解需要注意什麼,下面列出了 Python 中縮進錯誤的一些常見原因:

  • 編碼時同時使用製表符和空格。 可以說理論上,製表符和空格都有相同的用途,但讓我們從解釋器的角度考慮這一點。 如果空格和製表符的使用不一致且可互換使用,則會產生歧義。 這將導致解釋器混淆使用哪種更改,並最終在 Python 中返回縮進錯誤。
  • 您無意中將縮進放置在錯誤的位置,或者代碼行之間沒有製表符或空格。 由於 Python 遵循嚴格的準則來安排編寫的代碼,因此在錯誤的位置縮進將不可避免地返回錯誤。 例如,Python 的第一行不應該縮進。
  • 有時,在完成一個過期的、特別長的程序時,您可能會在不知不覺中錯過縮進複合語句函數,例如 for、while 和 if。 這將再次導致縮進錯誤。 這是使用 Python 時對縮進最基本的需求,需要嚴格練習才能掌握。
  • 如果您在使用用戶定義的函數或不同的類時忘記使用縮進,則可能會彈出錯誤。

如何解決 Python 中的縮進錯誤?

  • 檢查錯誤的空格或製表符。 不幸的是,沒有快速修復縮進錯誤的方法。 由於代碼是您的,事實仍然是您必須單獨評估每一行以識別錯誤實例。 但是,由於代碼行是按塊排列的,因此過程相對簡單。 例如,如果您在特定行中使用了“if”語句,則可以交叉檢查是否記得縮進下一行。
  • 確保特定塊的縮進在整個代碼中保持不變,即使在中間引入了一個新塊。 檢查縮進中的不一致。

如果上述手動解決方案對您不起作用,並且您很難確定錯過縮進的位置,請按照以下步驟操作:

  • 轉到您的代碼編輯器設置並啟用旨在顯示選項卡和空格的選項。 啟用此功能後,您將看到單個小點,其中每個點代表一個製表符/空白。 如果您注意到一個點在不應該出現的地方丟失,那麼該行可能有縮進錯誤。
  • 使用 Python 解釋器內置的縮進指南。 可以說,這種方法對於幾行代碼來說效率很低。 但是,由於它會帶您瀏覽每一行並準確顯示錯誤所在的位置,因此它是查找和修復所有錯誤的最可靠方法。

縮進的好處

可讀性和一致性對於任何好的代碼都是必不可少的。 在 PEP 8 空白之後,道德應該是不可協商的。 它在邏輯上證實了您的代碼,從而有助於獲得更愉快的編碼體驗。 此外,如果您遵循此文體指南,其中可讀性是您的事實,那麼您不認識但對您的工作感興趣的人將輕鬆理解您的代碼。

縮進的缺點

  • 如果代碼很大並且縮進已損壞,則修復縮進錯誤可能會很乏味。 這通常是從在線資源、Word 文檔或 PDF 文件複製代碼時的情況。
  • 流行的編程語言通常使用大括號進行縮進。 對於剛開始使用 Python 的程序員來說,適應使用空格進行縮進的想法可能很困難。

加起來

你和編寫良好的代碼之間的一切都是縮進,而你、編寫良好的代碼及其無縫執行之間的一切都是縮進錯誤。 現在,所有人都會犯錯。 所有的程序員都是人。 因此,所有的程序員都會犯錯誤。 但是一個縮進錯誤很容易解決。 您需要做的就是呼吸並佔據您的空間。

如果您想了解數據科學,請查看 IIIT-B 和 upGrad 的數據科學執行 PG 計劃,該計劃是為在職專業人士創建的,提供 10 多個案例研究和項目、實用的實踐研討會、行業專家的指導、1與行業導師一對一,400 多個小時的學習和頂級公司的工作協助。

為未來的職業做準備

申請數據科學理學碩士