HOWTO · Python
Python で TabError を修正
このチュートリアルでは、Python でタブエラーを修正するための原因と解決策を示します。
このページの内容
Python は、最も広く使用されているプログラミング言語の 1つです。コードブロック(ループブロックや if 条件ブロックなど)に中括弧を使用する Java や C++ などの他のプログラミング言語とは異なり、インデントを使用してコードのブロックを定義します。
Python のインデントルール
定義された規則に従って、Python はインデントに 4つのスペースまたはタブを使用します。コードブロックはタブインデントで始まり、そのブロックの次のコード行はインデントされていません。
先頭の空白は、行の先頭のインデントレベルを決定します。特定のコードブロックのステートメントをグループ化するには、インデントレベルを上げる必要があります。
同様に、グループ化を閉じるには、インデントレベルを下げる必要があります。
Python での TabError の原因
Python はインデントに 4つのスペースまたはタブを使用しますが、コードの記述中に両方を使用すると、TabError:インデントでのタブとスペースの一貫性のない使用が発生します。次のコードでは、タブを使用して 2 行目と 3 行目をインデントし、スペースを使用して 4 行目をインデントしています。
サンプルコード:
# 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 を修正
残念ながら、このエラーを自動的に修正する簡単な方法はありません。コードブロック内の各行をチェックする必要があります。
この場合、この ----*のようなタブ記号が表示されます。空白にはこの記号はありません。したがって、4つのスペースまたはタブを一貫して使用することでコードを修正できます。
この例では、スペースをタブに置き換えて、TabError を修正します。以下は正しいコードです。
サンプルコード:
# Python 3.x
def check(marks):
if marks > 60:
print("Pass")
print("Congratulations")
check(66)
出力:
#Python 3.x
Pass
Congratulations