Heim > Backend-Entwicklung > Python-Tutorial > Warum erhalte ich die Meldung „NameError: Name ‚x' ist nicht definiert', nachdem ich eine Benutzereingabe in Python erhalten habe?

Warum erhalte ich die Meldung „NameError: Name ‚x' ist nicht definiert', nachdem ich eine Benutzereingabe in Python erhalten habe?

Patricia Arquette
Freigeben: 2024-11-15 21:19:03
Original
905 Leute haben es durchsucht

Why am I getting a

Fehlerbehandlung: Lösen des „NameError“ nach Benutzereingaben in Python

Beim Versuch, Benutzereingaben in Python abzurufen, stoßen viele Anfänger auf das gefürchteter Fehler „NameError: Name ‚x‘ ist nicht definiert“. Dieses Problem tritt auf, wenn die vom Benutzer eingegebene Variable, z. B. „x“, nicht als gültige Variable im Python-Code erkannt wird.

Ein häufiges Missverständnis ist, dass input() für diesen Zweck verwendet werden sollte. In Python 2.x ist input() jedoch eine Funktion, die ihr Argument auswertet und es als Python-Code ausführt. Das heißt, wenn Sie eine Zeichenfolge wie „Hallo“ eingeben, wird versucht, diese als Python-Anweisungen zu interpretieren, was nicht das ist, was Sie beabsichtigen.

Um dies zu beheben, sollten Sie stattdessen raw_input() verwenden, was auch der Fall ist speziell für den Erhalt von Benutzereingaben in Python 2.x entwickelt. raw_input() gibt einfach die eingegebene Zeichenfolge ohne Auswertung zurück.

Korrigierter Code

UserName = raw_input("Please enter your name: ")
print("Hello Mr. " + UserName)
raw_input("<Press Enter to quit.>")
Nach dem Login kopieren

Mit dieser Änderung funktioniert der Code einwandfrei in Python 2.x , und Sie werden nicht mehr auf die Ausnahme „NameError“ stoßen, wenn Sie Benutzereingaben verwenden.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich die Meldung „NameError: Name ‚x' ist nicht definiert', nachdem ich eine Benutzereingabe in Python erhalten habe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage