Saltar al contenido

Errores y excepciones en Python

Errores y excepciones

En Python, hay dos tipos de errores: errores de sintaxis y excepciones. Esta publicación describirá cuáles son esos errores. Las próximas publicaciones mostrarán cómo podemos manejar esos errores.

Errores de sintaxis

Comencemos con los errores de sintaxis (también conocidos como errores de análisis).

El analizador repite la línea infractora y muestra una ‘flecha’ que apunta al punto más temprano de la línea donde se detectó el error.

El error es causado por (o al menos detectado en) el token que precede a la flecha: en el ejemplo, el error se detecta en la palabra clave print, ya que faltan dos puntos (‘:’) antes.

El nombre del archivo y el número de línea se imprimen para que sepa dónde buscar en caso de que la entrada provenga de un script.

Ejemplo

Ejemplo de un error de sintaxis

>>> while True print 'Hello world'
  File "", line 1, in ?
    while True print 'Hello world'
                   ^
SyntaxError: invalid syntax

Excepciones

El otro tipo de errores en Python son excepciones.

Incluso si una declaración o expresión es sintácticamente correcta, puede causar un error cuando se intenta ejecutarla.

Los errores detectados durante la ejecución se denominan excepciones.

Las excepciones vienen en diferentes tipos y el tipo se imprime como parte del mensaje.

Los tipos del ejemplo son ZeroDivisionError, NameError y TypeError.

Error de excepción

Ejemplo de error de excepción.

>>> 10 * (1/0)
Traceback (most recent call last):
  File "", line 1, in ?
ZeroDivisionError: integer division or modulo by zero
>>> 4 + spam*3
Traceback (most recent call last):
  File "", line 1, in ?
NameError: name 'spam' is not defined
>>> '2' + 2
Traceback (most recent call last):
  File "", line 1, in ?
TypeError: cannot concatenate 'str' and 'int' objects

Entrenamiento de Python recomendado

Para el entrenamiento de Python, nuestra principal recomendación es DataCamp.