Maison >développement back-end >Tutoriel Python >Pourquoi est-ce que j'obtiens une « IndentationError : unindent ne correspond à aucun niveau d'indentation externe » dans mon code Python ?

Pourquoi est-ce que j'obtiens une « IndentationError : unindent ne correspond à aucun niveau d'indentation externe » dans mon code Python ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-06 22:07:12615parcourir

Why Am I Getting an

Erreurs d'indentation en Python : comprendre l'exception "IndentationError : le retrait ne correspond à aucun niveau d'indentation externe"

Lors de la rencontre de l'exception "IndentationError : "unindent ne correspond à aucun niveau d'indentation externe" lors de la compilation du code Python, il est crucial de comprendre le source de ce problème.

En Python, l'indentation joue un rôle essentiel dans la définition des blocs de code. Chaque bloc doit être correctement mis en retrait avec des espaces ou des tabulations, et l'indentation doit correspondre sur toutes les lignes de ce bloc. Mélanger des espaces et des tabulations pour l'indentation peut entraîner des incohérences et déclencher cette erreur.

Pour résoudre ce problème, il est recommandé d'effectuer une opération de recherche et de remplacement approfondie pour garantir que tous les caractères d'espacement utilisés pour l'indentation sont cohérents. En règle générale, il est conseillé d'utiliser quatre espaces pour chaque niveau d'indentation.

Par exemple, considérons l'extrait de code suivant qui renvoie la factorielle d'un nombre :

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)

En garantissant que l'indentation pour Chaque ligne du bloc fonctionnel correspond, cet extrait de code révisé doit être compilé sans aucune erreur d'indentation.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn