logo

Error de atributo en Python

¿Qué es un error?

En los lenguajes de programación, si ejecutamos algún código de forma no válida, la ejecución del programa se detendrá con un mensaje y este mensaje se denomina error o excepción. Existen ciertos tipos de errores en un lenguaje de programación por diferentes motivos. Algunos de ellos son los siguientes:

Error de afirmación:

Este tipo de error ocurre cuando las condiciones de aserción o declaraciones fallan en el código.

Error de importación:

Este error ocurre cuando importamos algún módulo en el archivo y si ese módulo no existe.

Error de índice:

Actor Rekha

Ocurre cuando, para cualquier secuencia, su índice está fuera del rango.

Error clave:

Este error aparece en Python cuando no podemos encontrar ninguna clave en el diccionario.

Error de nombre:

Este error puede ocurrir cuando no encontramos ninguna variable en el ámbito local o global.

Error de tiempo de ejecución:

Este error se generará cuando el error no se pueda clasificar en ningún tipo.

Error de sangría:

Cuando usamos la sangría incorrecta en el código Python, se producirá IndentationError.

Error del sistema:

Cuando hay un error interno, el intérprete generará SystemError.

Error Unicode:

Cuando hay un error de codificación o decodificación relacionado con Unicode, se generará UnicodeError.

Error de valor:

Cuando en una función pasamos el argumento correcto según el tipo de datos, pero el valor no es el adecuado, entonces el error que ocurrió se llama ValueError.

Error de división cero:

Como sabemos, en matemáticas no podemos dividir ningún número entre cero porque el resultado tiende al infinito. Entonces, si hemos escrito alguna declaración sobre la división por cero o el módulo por cero, entonces el error generado será ZeroDivisionError.

EOFError:

Cuando usamos la función input() para obtener la entrada de un archivo y llegamos al final del archivo, se generará este error para indicar que hemos llegado al final del archivo y ahora no podemos tomar ninguna entrada del archivo.

Este artículo está dedicado principalmente a AttributeError.

¿Qué es el error de atributo?

Este error ocurre en el programa cuando hay una falla de acondicionamiento en la asignación de atributos. Por ejemplo, si asignamos algún valor a una variable entera y si intentamos usar cualquier función de cadena de esa variable, generará AttributeError.

Podemos entender el motivo de AttributeError en Python con los siguientes ejemplos:

Ejemplo 1:

Cuando aplicamos una función en un tipo de datos diferente que no es posible

 a=15 a.append('javatpoint') 

Producción:

Error de atributo en Python

Explicación:

En el código anterior, tenemos una variable entera y la hemos inicializado con el valor 15. Ahora, si usamos la función agregar en la variable a, dará AttributeError, que dice que no hay ningún atributo como agregar en el tipo de datos entero.

Ejemplo2:

Hay posibilidades de que se produzca un AttributeError por la ortografía incorrecta del atributo.

 string = 'you will learn each coding tutorial from '.fst('Javatpoint') print(string) 

Producción:

Error de atributo en Python

Explicación:

En el código anterior, tenemos un atributo de cadena y aplicamos el atributo fst, por lo que habrá AttributeError de que este atributo no existe para la variable.

Ejemplo 3:

Podemos obtener AttributeError si intentamos hacer una referencia incorrecta para cualquier variable de clase.

 class Javatpoint(): def __init__(self): self.var1 = 'This is for JavatPoint' obj = Javatpoint() print(obj.var1) print(obj.var2) 

Producción:

Error de atributo en Python

Explicación:

En el código anterior, tenemos una clase y hay una variable llamada var1. Creamos el objeto de la clase y por error hacemos referencia a la variable var2 incorrecta de esa clase que incluso no existe, por lo que definitivamente habrá un AttributeError.

La solución para abordar el error o excepción:

En Python o en cualquier lenguaje de programación, podemos usar el manejo de excepciones o errores usando declaraciones try y except.

Ejemplo 4:

 class Javatpoint(): def __init__(self): self.var1 = 'This is for javatpoint' obj = Javatpoint() try: print(obj.var1) print(obj.var2) except AttributeError: print('There is no such attribute') 

Producción:

Error de atributo en Python

Explicación:

En el código anterior, tenemos una clase y una variable llamada var1. En la declaración try, intentamos hacer referencia a var1 y var2. Podremos eliminar la referencia a var1 e imprimiremos la declaración correspondiente, pero obtendremos el AttributeError por hacer referencia a var2. Entonces, el programa entrará en el bloque excepto e imprimiremos la declaración, que está escrita solo para la condición de error.