L’Input Non È Definito Javascript

| | | |

Python 3 ha sostituito il metodo raw_input() di Python 2 con il metodo input() . Se provi a utilizzare raw_input () in Python 3, riscontrerai l`errore NameError: name `raw_input` undefined.

In in questa guida, discuteremo cosa significa questo errore e perché potresti incontrarlo. Vedremo un esempio di questo errore, insieme a una soluzione, in modo che tu possa imparare a risolverlo.

NameError: il nome `raw_input` non è definito

Il raw_input() in Python 2 raccoglie l`input da un utente. Questo input può essere convertito in qualsiasi tipo di dati, ad esempio una stringa, un numero intero o un numero in virgola mobile.

Considera questo codice:

nomeutente = raw_input ("Inserisci un nome utente:")

Possiamo utilizzare questo codice per raccogliere un nome utente da un utente in Python 2.

Essere in grado di raccogliere i dati di un utente significa che puoi rendere i tuoi programmi interattivi. Non devi solo definire tutti i dati nel programma che utilizzerai. Puoi chiedere a un utente di fornire dati.

In Python 3, sono state apportate molte modifiche al linguaggio Python. Tra questi c`è raw_input() che è stato rinominato in input(). Entrambe le funzioni raccolgono dati da sys.stdin (chiamato anche "standard input") e restituiscono questi dati a un programma.

Uno scenario di esempio

Costruiremo un programma che calcola il voto che uno studente ha ottenuto con il suo compito artistico. Il compito è maggiore di 50 e gli studenti possono ricevere un voto A, B, C o Fail. Per iniziare, chiediamo al nostro utente di inserire una nota che calcoleremo la nota in parole:

digital_grade = int (raw_input ("Inserisci una nota:"))

Utilizziamo raw_input() per raccogliere un voto dell`utente. l`utente deve inserire una nota nel nostro programma prima del resto del programma. convertiamo il valore inserito da un utente in un numero intero in modo da poter eseguire confronti numerici più avanti nel nostro codice. perché raw_input() restituisce una stringa predefinita.

Utilizzeremo un`istruzione if per calcolare la nota corrispondente alla lettera:

Questa dichiarazione mostrerà sia la lettera che il numero voto a studente ottenuto.

Corriamo il nostro codice e guarda cosa succede:

Il nostro codice restituisce un errore .

La soluzione

Il messaggio di errore ci dice che ci riferiamo a un valore che non esiste. Dato che stiamo usando Python 3.x per eseguire il nostro programma, raw_input () non esiste.

Per correggere il nostro codice, dobbiamo sostituire il nostro raw_input () istruzione con un`istruzione input ():

Le istruzioni raw_input () e input () sono funzionalmente identiche. Ciò significa che non abbiamo bisogno di apportare altre modifiche al nostro codice per rendere la nostra base di codice compatibile con Python 3.x.

Eseguiamo il nostro programma con questa modifica eseguita:

Il nostro codice calcola correttamente il voto di uno studente.

Una nota sulla riassegnazione del raw_input

Una soluzione tecnicamente funzionante è per assegnare il valore di raw_input() alla funzione input(). Possiamo farlo usando assegnazione di variabili . Ciò ti consentirà di utilizzare una funzione chiamata raw_input () nel tuo codice Python 3.

Considera questo esempio:

raw_input = input

Questa istruzione dice a Python che il valore di raw_input() deve essere uguale a input() .

Questa non è una buona soluzione perché la documentazione ufficiale di Python 3 ha gradualmente rimosso il nome raw_input() a favore di input() . Alcuni sviluppatori che leggono il tuo codice potrebbero essere confusi se vedono raw_input () in una base di codice Python 3, rallentando i tempi di sviluppo.

Conclusione

Il NameError: il nome `raw_input` non è definito viene generato un errore quando si tenta di utilizzare il metodo raw_input () in Python 3. Per correggere questo errore, sostituire tutte le istanze di raw_input () con la funzione input () in il programma.

Ora hai le conoscenze per correggere questo errore come un programmatore Python professionista!

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers

News


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method