NameError: name ‘raw_input’ is not defined

El mensaje de error «NameError: name ‘raw_input’ is not defined», nos dice que estamos haciendo referencia a un valor que no existe.

La explicación es sencilla, debido a que estamos usando Python 3.x para ejecutar nuestro programa, raw_input() no existe.

El error «NameError: name raw_input is not defined«, se genera cuando intentamos usar el método raw_input () en Python 3.

Para corregir este error, reemplaza todas las instancias de raw_input() con la función input() en tu código.

Otros errores de Python

Una solución que técnicamente funciona, pero que no recomiendo, es asignar el valor de raw_input() a la función input().

Podemos hacer esto, usando la asignación de variables y esto técnicamente permitirá usar raw_input () en Python 3.

Seria algo como esto:

raw_input =  input

Esta declaración, le dice a Python que el valor de raw_input() debe ser igual a input().

No se recomienda

Aunque este técnicamente probada, esta no es una buena solución, y esto es porque otros desarrolladores que lean el código pueden confundirse si ven raw_input() en una base de código de Python 3, teniendo en cuenta que en la documentación oficial de Python 3  se eliminó el nombre raw_input() a favor de input().

Espero que esto sirva de ayuda a alguien

Muchas gracias.

No podía despreciarlo, era el ultimo brindis de un bohemio por una reina