Python NameError: Beheben von Problemen bei der Namensdefinition
Beim Ausführen eines Python-Skripts kann der Fehler „NameError: Name ist nicht definiert“ auftreten. " Dieser Fehler bedeutet, dass das Skript den angegebenen Namen oder Bezeichner im Namensraum des Programms nicht finden kann. Lassen Sie uns die Grundursache dieses Fehlers untersuchen und seine Lösung identifizieren.
Der angegebene Codeausschnitt veranschaulicht dieses Problem:
s = Something() s.out() class Something: def out(self): print("it works")
Beim Ausführen dieses Skripts stößt der Interpreter auf die Meldung „NameError: name ' Ausnahme: „Etwas ist nicht definiert“. Dies liegt daran, dass die Klasse Something nicht definiert wird, bevor sie als Objekt instanziiert wird. Um dieses Problem zu lösen, muss die Klassendefinition vor ihrer Verwendung erfolgen:
class Something: def out(self): print("it works") s = Something() s.out()
Durch die Definition der Klasse vor dem Versuch, eine Instanz zu erstellen, kann der Interpreter etwas erfolgreich erkennen und das Objekt s instanziieren.
Beachten Sie außerdem, dass Instanzmethoden in Python das Argument self als ersten Parameter erfordern. Dieser Parameter stellt die Instanz der Klasse dar, die die Methode aufruft. Im bereitgestellten Code hat die Out-Methode self nicht als erstes Argument übergeben, was zu einem weiteren Typfehler führen würde.
Durch Befolgen dieser Richtlinien können Sie die Ausnahme „NameError: Name ist nicht definiert“ vermeiden und Stellen Sie sicher, dass Ihre Python-Skripte erfolgreich ausgeführt werden.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich in meinem Python-Skript die Meldung „NameError: Name ist nicht definiert'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!