Maison >développement back-end >Tutoriel Python >Pourquoi Python renvoie-t-il une erreur « NameError : le nom n'est pas défini » ?

Pourquoi Python renvoie-t-il une erreur « NameError : le nom n'est pas défini » ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-29 20:55:02587parcourir

Why Does Python Throw a

NameError de Python : débogage définitif

Rencontrer l'erreur "NameError : le nom n'est pas défini" en Python peut être frustrant, entravant l'exécution de votre code. Examinons les causes de cette erreur et trouvons une solution efficace.

L'erreur se produit lorsque Python rencontre une référence à une variable ou une classe inconnue. Dans le code fourni :

<code class="python">s = Something()
s.out()

class Something:
    def out():
        print("it works")</code>

L'interpréteur tente d'accéder à la classe Something après que la variable s a été définie. Cependant, en Python, les définitions de classes doivent être faites avant leur utilisation ; sinon, l'interprète ne peut pas les reconnaître.

Pour rectifier la situation, redéfinissez la classe Something avant de l'utiliser :

<code class="python">class Something:
    def out(self):
        print("it works")

s = Something()
s.out()</code>

Un autre point commun dans cette erreur concerne la définition de la méthode d'instance. Les méthodes d'instance nécessitent self comme premier argument, représentant l'instance elle-même. Assurez-vous de vous inclure lors de la définition des méthodes d'instance :

<code class="python">class Something:
    def out(self):
        print("it works")</code>

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