Heim  >  Artikel  >  Backend-Entwicklung  >  Warum löst mein Python 2.7-Code einen NameError aus, wenn er Benutzereingaben entgegennimmt?

Warum löst mein Python 2.7-Code einen NameError aus, wenn er Benutzereingaben entgegennimmt?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-26 02:00:02466Durchsuche

Why Does My Python 2.7 Code Throw a NameError When Taking User Input?

Benutzereingaben als String in Python 2.7 abrufen

Beim Versuch, Benutzereingaben zu erhalten und diese als String zu bearbeiten, ohne sie in Anführungszeichen zu setzen , können Benutzer aufgrund der Standardeingabefunktion von Python 2.7 auf Probleme stoßen.

Problem:

Bedenken Sie den folgenden Code:

<code class="python">testVar = input("Ask user for something.")</code>

Wenn Wenn ein Benutzer „Hallo“ eingibt, löst der Code einen Fehler aus:

<code class="python">NameError: name 'Hello' is not defined</code>

Dies liegt daran, dass input() die Eingabe als Python-Code auswertet.

Lösung:

Um dieses Problem zu beheben, verwenden Sie raw_input() anstelle von input().

<code class="python">testVar = raw_input("Ask user for something.")</code>

raw_input() gibt die vom Benutzer eingegebene wörtliche Zeichenfolge zurück, was eine einfache Manipulation ohne Einschließen ermöglicht Zitate.

Achtung:

Während input() für die Auswertung von Benutzereingaben als Code nützlich sein kann, wird allgemein empfohlen, die Verwendung zu vermeiden und bei raw_input() zu bleiben String-Manipulation.

Das obige ist der detaillierte Inhalt vonWarum löst mein Python 2.7-Code einen NameError aus, wenn er Benutzereingaben entgegennimmt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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