Articles of excepción de

Uso de “excepto excepción” contra “excepto … boost” en Python

Estoy leyendo un código fuente que contiene una función similar a la siguiente: def dummy_function(): try: g = 1/0 except Exception as e: raise Exception(“There is an error: {}”.format(e)) Como lo entiendo, todas las excepciones se derivan de la clase Excepción , por lo que esto debería detectar todos los errores. Siguiendo https://docs.python.org/3/tutorial/errors.html , entonces, […]

Cómo en Python encontrar dónde se generó la excepción

Cómo determinar en qué función se levantó la excepción. Por ejemplo existen dos funciones: ‘foo’ y ‘bar’. En ‘foo’ la excepción será levantada al azar. import random def foo(): if random.randint(1, 10) % 2: raise Exception bar() def bar(): raise Exception try: foo() except Exception as e: print “Exception raised in %s” % ???

¿Cómo atrapar una excepción lanzada en ctypes?

Estoy trabajando con un código C llamado desde Python usando ctypes. En algún lugar de las entrañas de la biblioteca C, se está produciendo una excepción y / o se está cancelando (). ¿Hay alguna forma de capturar esto en mi código de llamadas de Python? (La plataforma es Linux)

¿Por qué devolver en función suprimir la excepción planteada?

Compruebe el siguiente código sobre el procesamiento de excepciones en Python class myException(Exception): def __str__(self): return ‘this is my exception’ class myException2(Exception): def __str__(self): return ‘this is my exception 2’ def myfunc(): try: raise myException2 print(‘after exception’) except myException: a = ‘exception occur’ print(a) else: a = ‘exception doesn\’t occur’ print(a) finally: a = ‘no […]

errores de depuración en multiproceso python

Estoy usando la función Pool del módulo de multiprocessing para ejecutar el mismo código en paralelo en diferentes datos. Resulta que en algunos datos mi código genera una excepción, pero no se indica la línea precisa en la que esto sucede: Traceback (most recent call last): File “my_wrapper_script.py”, line 366, in main() File “my_wrapper_script.py”, line […]

Entrega de excepciones múltiples del mismo tipo y reanudación de ejecución en python

Parece que uno no puede reanudar la ejecución de la prueba una vez que haya alcanzado la excepción de aumento de usuario definida en Python. Pero en mi escenario quiero comprobar que se ha producido un error para diferentes valores de entrada. Pero la implementación actual está restringida para continuar con el error de verificación […]

Python: sobrescribir __str__ en una instancia de excepción

Estoy intentando anular la salida impresa de una subclase de Excepción en Python después de que se haya producido la excepción y no estoy teniendo la suerte de que mi anulación realmente sea llamada. def str_override(self): “”” Override the output with a fixed string “”” return “Override!” def reraise(exception): “”” Re-raise an exception and override […]

¿Cómo puede capturar una excepción personalizada de Celery worker, o dejar de usar el prefijo `celery.backends.base`?

La tarea Mi apio genera una excepción personalizada NonTransientProcessingError , que luego es capturada por AsyncResult.get() . Tareas.py: class NonTransientProcessingError(Exception): pass @shared_task() def throw_exception(): raise NonTransientProcessingError(‘Error raised by POC model for test purposes’) En la consola de Python: from my_app.tasks import * r = throw_exception.apply_async() try: r.get() except NonTransientProcessingError as e: print(‘caught NonTrans in type […]

¿Qué línea se elige para ser reportada en excepción

Supongamos que tengo una multilínea en Python que genera una excepción. ¿Cómo decide Python en qué línea se debe levantar la excepción? Ejemplos: (Nota: podría haber usado barras diagonales tras cada línea) (1 +0/0 +3) Muestra una excepción en la línea 3 (una excepción ZeroDivisionError , en +3) ). (1 + 0/0 ) Lanza una […]

¿Una forma adecuada de boost la excepción en Python?

Aquí está el código simple: import sys class EmptyArgs(StandardError): pass if __name__ == “__main__”: #first way to raise exception if len(sys.argv) == 1: raise EmptyArgs #second way to raise exception if len(sys.argv) == 1: raise EmptyArgs() ¿De qué manera es “más” correcto? Ambos estan trabajando Nota: en mi código real, la excepción es exactamente la […]