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

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

Susan Sarandon
Susan Sarandonオリジナル
2024-12-03 19:11:121026ブラウズ

Why Does Python Throw an

Python の「IndentationError: unindent doesn't match any external indentation level」エラーについて

「IndentationError: unindent doesn't match any external indentation level」エラーが発生した場合Python で「外側のインデント レベルが一致しません」というエラーが発生する場合、これは通常、コードのインデントに問題があることを示します。インデントは Python 構文の重要な側面であり、一貫性があり、正しいレベルに準拠していることを確認することが重要です。

考えられる原因: スペースとタブが混在している

共通の 1 つこのエラーの原因は、インデントにスペースとタブが混在していることです。 Python では一貫したインデントが必要であり、スペースとタブの両方を使用するとインタープリタが混乱する可能性があります。

解決策:

この問題を解決するには、コード内で検索と置換を実行します。すべてのタブを一貫した数のスペースに置き換えます。たとえば、すべてのタブを 4 つのスペースに置き換えることができます。

例:

次の 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

すべてのタブを 4 つのスペースに置き換えることで、エラーは解決されます:

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)

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。