ホームページ > バックエンド開発 > Python チュートリアル > Python が「IndentationError: unindent is not match any external indentation level」をスローするのはなぜですか?

Python が「IndentationError: unindent is not match any external indentation level」をスローするのはなぜですか?

Barbara Streisand
リリース: 2024-12-08 15:54:11
オリジナル
665 人が閲覧しました

Why Does Python Throw an

スペースまたはタブを使用して一貫してインデントする

Python で「IndentationError: unindent doesn't match any external indentation level」エラーが発生した場合、一見正しいインデントであっても、多くの場合、インデントは不一致を示しています。 indentation.

具体的には、Python ではインデントにスペースまたはタブを一貫して使用する必要があります。これらの文字を混在させると混乱が生じ、上記のエラーが発生する可能性があります。

例:

次のコードを考えてみましょう:

import sys

def Factorial(n): # Return factorial
    result = 1
    for i in range (1,n):
        result = result * i
    print "factorial is ",result
    return result
ログイン後にコピー

このコードインデントにタブとスペースが混在しているため、エラーが発生します。これを修正するには、タブをスペースに置き換えるか、その逆を行います。

スペースの使用:

import sys

def Factorial(n): # return factorial
    result = 1
    for i in range(1, n):
        result = result * i
    print("factorial is ", result)
    return result

print(Factorial(10))
ログイン後にコピー

タブの使用:

import sys

def Factorial(n):
    result = 1
    for i in range(1, n):
        result = result * i
    print("factorial is ", result)
    return result

print(Factorial(10))
ログイン後にコピー

コード全体でインデントが一貫していることを確認し、スペースとタブの混在を避けてください。このエラーを防ぐため。

以上がPython が「IndentationError: unindent is not match any external indentation level」をスローするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート