Articles of manejo de excepciones de

¿Cómo registrar la excepción de Python?

¿Cómo puedo registrar una excepción en Python? He visto algunas opciones y descubrí que puedo acceder a los detalles de la excepción real utilizando este código: import sys import traceback try: 1/0 except: exc_type, exc_value, exc_traceback = sys.exc_info() traceback.print_exception(exc_type, exc_value, exc_traceback) Me gustaría obtener de alguna manera la cadena print_exception() la print_exception() para poder registrarla.

¿Manejo de excepciones barato en Python?

Leí en una respuesta anterior que el manejo de excepciones es barato en Python, por lo que no deberíamos hacer una verificación precondicional. No he oído hablar de esto antes, pero soy relativamente nuevo en Python. El manejo de excepciones significa una llamada dinámica y un retorno estático, mientras que una sentencia if es una […]

Uso de Python para “subir de”

¿Cuál es la diferencia entre raise y raise from en Python? try: raise ValueError except Exception as e: raise IndexError cuyos rendimientos Traceback (most recent call last): File “tmp.py”, line 2, in raise ValueError ValueError During handling of the above exception, another exception occurred: Traceback (most recent call last): File “tmp.py”, line 4, in raise […]

Mensaje de excepción (Python 2.6)

En Python, si abro un archivo binario que no existe, el progtwig sale con un error y se imprime: Traceback (most recent call last): File “C:\Python_tests\Exception_Handling\src\exception_handling.py”, line 4, in pkl_file = open(‘monitor.dat’, ‘rb’) IOError: [Errno 2] No such file or directory: ‘monitor.dat’ Puedo manejar esto con ‘try-except’, como: try: pkl_file = open(‘monitor.dat’, ‘rb’) monitoring_pickle = […]

Python: intente la statement en una sola línea

¿Hay alguna forma en python para convertir un try / excepto en una sola línea? algo como… b = ‘some variable’ a = c | b #try statement goes here Donde b es una variable declarada y c no … así que c arrojaría un error y a se convertiría en b …

¿Existe una forma pythonica de probar algo hasta un número máximo de veces?

Tengo un script en Python que está consultando un servidor MySQL en un host linux compartido. Por alguna razón, las consultas a MySQL a menudo devuelven un error de “el servidor se ha ido”: _mysql_exceptions.OperationalError: (2006, ‘MySQL server has gone away’) Si vuelve a intentar la consulta inmediatamente después, normalmente se realiza correctamente. Por lo […]

¿Probar / atrapar o validar la velocidad?

Estoy trabajando con Python y siempre que tuve que validar la entrada de la función, asumí que la entrada funcionó y luego detecté errores. En mi caso, tuve una clase de Vector() universal que usé para algunas cosas diferentes, una de las cuales es la sum. Funcionó como una clase Color() y como Vector() , […]

Atrapa excepciones dentro de una clase

¿Es posible escribir un controlador de excepciones para detectar los errores en tiempo de ejecución generados por TODOS los métodos en clase? Puedo hacerlo rodeando a cada uno con try / except: class MyError(Exception): def __init__(self, obj, method): print ‘Debug info:’, repr(obj.data), method.__name__ raise class MyClass: def __init__(self, data): self.data = data def f1(self): try: […]

Deshabilitar aserciones en Python

¿Cómo deshabilito aserciones en Python? Es decir, si una afirmación falla, no quiero que lance un error de AssertionError , sino que continúe. ¿Cómo puedo hacer eso?

Captura de una excepción al usar una statement ‘with’ de Python

Para mi vergüenza, no puedo averiguar cómo manejar la excepción para la statement ‘with’ de python. Si tengo un código: with open(“a.txt”) as f: print f.readlines() Tengo muchas ganas de manejar ‘archivo no encontrado excepción’ para hacer algo. Pero no puedo escribir with open(“a.txt”) as f: print f.readlines() except: print ‘oops’ y no puedo escribir […]