entrada não está definida Javascript

| | | |

O Python 3 substituiu o método raw_input() do Python 2 pelo método input() . Se você tentar usar raw_input() no Python 3, você encontrará o erro NameError: name `raw_input` undefined.

In neste guia, discutiremos o que esse erro significa e por que você pode encontrá-lo. Veremos um exemplo desse erro, juntamente com uma solução, para que você possa aprender como corrigi-lo.

NameError: o nome `raw_input` não está definido

O raw_input () em Python 2 coleta a entrada de um usuário. Essa entrada pode ser convertida em qualquer tipo de dados, como uma string, um número inteiro ou um número de ponto flutuante.

Considere este código:

username = raw_input ("Digite um nome de usuário:")

Podemos usar este código para coletar um nome de usuário de um usuário no Python 2.

Ser capaz de coletar os dados de um usuário significa que você pode tornar seus programas interativos. Você não precisa apenas definir todos os dados no programa que usará. Você pode solicitar que um usuário forneça dados.

No Python 3, muitas alterações foram feitas na linguagem Python. Entre eles está raw_input() que foi renomeado para input(). Ambas as funções coletam dados de sys.stdin (também chamado de "entrada padrão") e retornam esses dados para um programa.

Um exemplo de cenário

Vamos construir um programa que calcule a nota que um aluno obteve com seu trabalho artístico. A atribuição é superior a 50, e os alunos podem receber uma nota A, B, C ou Reprovado. Para começar, pedimos ao nosso usuário que insira uma nota que calcularemos a nota em palavras:

digital_grade = int (raw_input( "Digite uma nota:"))

Nós usamos raw_input() para coletar um voto do usuário. o usuário deve inserir uma nota em nosso programa antes do resto do programa. Nós convertemos o valor inserido por um usuário em um inteiro para que possamos fazer comparações numéricas posteriormente em nosso código. porque raw_input() retorna uma string padrão.

Usaremos uma instrução if para calcular a nota correspondente à letra:

Esta instrução mostrará tanto a letra quanto a nota numérica a aluno conseguiu.

Vamos correr nosso código e veja o que acontece:

Nosso código retorna um erro .

A solução

A mensagem de erro nos diz que estamos nos referindo a um valor que não existe. Como estamos usando Python 3.x para executar nosso programa, raw_input() não existe.

Para corrigir nosso código, precisamos substituir nosso raw_input() instrução com uma instrução input():

As instruções raw_input() e input() são funcionalmente idênticas. Isso significa que não precisamos fazer outras alterações em nosso código para tornar nossa base de código compatível com Python 3.x.

Vamos executar nosso programa com esta mudança feita:

Nosso código calcula com sucesso a nota de um aluno.

Uma observação sobre a reatribuição do raw_input

Uma solução tecnicamente funcional é para atribuir o valor de raw_input() à função input(). Podemos fazer isso usando atribuição de variáveis . Isso permitirá que você use uma função chamada raw_input() em seu código Python 3.

Considere este exemplo:

raw_input = input

Esta instrução diz ao Python que o valor de raw_input() deve ser igual a input() .

Esta não é uma boa solução porque a documentação oficial do Python 3 removeu gradualmente o nome raw_input() em favor de input() . Alguns desenvolvedores que estão lendo seu código podem ficar confusos se virem raw_input() em uma base de código Python 3, diminuindo o tempo de desenvolvimento.

Conclusão

O NameError: o nome `raw_input` não está definido um erro é gerado ao tentar usar o método raw_input() no Python 3. Para corrigir esse erro, substitua todas as instâncias de raw_input() pela função input() em o programa.

Agora você tem o conhecimento para corrigir esse erro como um programador profissional de Python!

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