修復 Python 中的 TabError
Fariba Laiq
2023年1月30日
2022年7月18日
Python 是使用最廣泛的程式語言之一。與其他程式語言(如 Java 和 C++ 等)使用花括號表示程式碼塊(如迴圈塊或 if
條件塊)不同,它使用縮排來定義程式碼塊。
Python 中的縮排規則
根據定義的約定,Python 使用四個空格或一個製表符進行縮排。程式碼塊以製表符縮排開始,該塊之後的下一行程式碼不縮排。
前導空格確定行首的縮排級別。我們需要增加縮排級別來對特定程式碼塊的語句進行分組。
同樣,我們需要降低縮排級別以關閉分組。
Python 中 TabError
的原因
Python 使用四個空格或一個製表符進行縮排,但如果我們在編寫程式碼時同時使用這兩個空格,則會引發 TabError:在縮排中製表符和空格的不一致使用
。在下面的程式碼中,我們使用製表符縮排了第二行和第三行,使用空格縮排了第四行。
示例程式碼:
#Python 3.x
def check(marks):
if(marks>60):
print("Pass")
print("Congratulations")
check(66)
輸出:
#Python 3.x
File "<ipython-input-26-229cb908519e>", line 4
print("Congratulations")
^
TabError: inconsistent use of tabs and spaces in indentation
修復 Python 中的 TabError
不幸的是,沒有簡單的方法可以自動修復此錯誤。我們必須檢查程式碼塊中的每一行。
在我們的例子中,我們可以看到類似 ----*
的製表符符號。空格沒有這個符號。所以我們可以通過一致地使用四個空格或製表符來修復程式碼。
在我們的例子中,我們將用製表符替換空格來修復 TabError
。以下是正確的程式碼。
示例程式碼:
#Python 3.x
def check(marks):
if(marks>60):
print("Pass")
print("Congratulations")
check(66)
輸出:
#Python 3.x
Pass
Congratulations
Author: Fariba Laiq
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedIn