Tecnología

Inicio

Cómo ver errores en Python

Cómo ver errores en Python


A pesar de los mejores esfuerzos de un programador, cualquier programa puede encontrar el error de vez en cuando de vez en cuando. En la mayoría de los casos, es importante poner en práctica métodos que muestran información sobre la naturaleza de estos errores para fines de depuración. Con el código correcto, los errores en un programa Python dado mostrarán a través del método de salida de error estándar, mientras que acciona un bloque de excepción atractivo de código. Este método permitirá que el programador para ambos mensajes de error de registro y dictar cómo el programa controla el error en particular.

Instrucciones

La captura y registro de errores en Python

1 Tome esta pequeña sección de código Python como un ejemplo:

! / / / Bin / usr local de Python

import sys

x = 4-4

y = y / x

de impresión y

Este fragmento de código, cuando se ejecuta, provocará un error grave (llamado ZeroDivisionError en Python) porque los números enteros no se pueden dividir por cero. Mientras que en el Python interactivo intérprete, este error se imprimirá en la pantalla y el programa se bloqueará. Sin embargo, el programador puede desarrollar un programa de interfaz gráfica de usuario para funcionar fuera de la intérprete que registrar y manejar este tipo de errores en el código.

2 Añadir un "try ... except" bloque de todo el código de ejemplo. Esto determinará cómo el programa se encarga de la error durante la ejecución:

! / / / Bin / usr local de Python

import sys

tratar:

x = 4 - 4

y = y / x

de impresión y

excepto ZeroDivisionError:

/*code to handle exception goes here*/

El código será ahora "tratar" las operaciones especificadas en el "try ... except" bloque. La sección de "excepción" se activará sólo si se produce el evento 'ZeroDivisionError'. Si se produce cualquier otro error, la "excepción" de bloques no se ejecutará. Es posible, sin embargo, configurar varios pasos de tratamiento de errores con múltiples "excepto" declaraciones.

3 Encaminar el mensaje de error a través de un objeto filestream salida. En este caso, los errores deben ir a través de la corriente de salida de error estándar (stderr).

! / / / Bin / usr local de Python

import sys

tratar:

x = 4 - 4

y = y / x

de impresión y

excepto ZeroDivisionError:

elog = open('out.log', 'w')

sys.stderr = ELOG

aumentar la excepción "División por cero"

La variable "ELOG" se asigna un archivo abierto. Entonces, la salida de error estándar (sys.stderr) está vinculado al archivo asignado a ELOG. Cualquier salida enviada a sys.stderr será escribir en el fichero "out.log". Por último, se hace una excepción "levantado", diciéndole al programa que se ha producido un error y es el momento de frenar. La "División por cero" cadena se imprimirá en out.log (porque la excepción imprimirá directamente a sys.stderr).

Consejos y advertencias

  • Existen múltiples formas de registro de errores de código en Python allá hechos a mano. Echa un vistazo a la especificación del lenguaje Python para obtener información sobre el módulo de depuración "AP", así como construido en funciones de registro en las bibliotecas de Python.