Articles of excepción

Prácticas recomendadas para estructurar excepciones de módulos en Python3

Supongamos que tengo un proyecto con una estructura de carpetas como tal. /project __init__.py main.py /__helpers __init__.py helpers.py … El módulo helpers.py define alguna excepción y contiene algún método que genera esa excepción. # /project/__helpers/helpers.py class HelperException(Exception): pass def some_function_that_raises(): raise HelperException Por otro lado, mi módulo main.py define sus propias excepciones e importa métodos […]

¿Es posible boost el tiempo de espera de respuesta en Google App Engine?

En mi máquina local, el script se ejecuta bien pero en la nube es 500 todo el tiempo. Esta es una tarea cron, así que realmente no me importa si toma 5min … : ¿Alguna idea de si es posible boost el tiempo de espera? Gracias rui

Python: elevar SyntaxError con lineno

Estoy implementando un analizador para un lenguaje específico del dominio, y quiero poder generar un SyntaxError. ¿Cómo configuro el nombre de archivo, lineno y desplazamiento cuando subo esta excepción? excepción SyntaxError Se genera cuando el analizador encuentra un error de syntax. Esto puede ocurrir en una statement de importación, en una statement exec, en una […]

La excepción de Python 3 elimina la variable en el ámbito de cierre por razones desconocidas

Tengo el siguiente código: def foo(): e = None try: raise Exception(‘I wish you would except me for who I am.’) except Exception as e: print(e) print(e) foo() En Python 2.7, esto se ejecuta como se esperaba y se imprime: I wish you would except me for who I am. I wish you would except […]

¿Por qué el manejo de múltiples excepciones requiere una tupla y no una lista?

Considere el siguiente ejemplo: def main_list(error_type): try: if error_type == ‘runtime’: raise RuntimeError(“list error”) if error_type == ‘valueerror’: raise ValueError(“list error”) except [RuntimeError, ValueError] as e: print str(e) def main_tuple(error_type): try: if error_type == ‘runtime’: raise RuntimeError(“tuple error”) if error_type == ‘valueerror’: raise ValueError(“tuple error”) except (RuntimeError, ValueError) as e: print str(e) main_tuple(‘runtime’) main_tuple(‘valueerror’) main_list(‘runtime’) […]

Excepciones de MySQLdb en Python

Empezando a familiarizarse con python y MySQLdb y me preguntaba ¿Dónde está el mejor juego para poner un bloque try / catch para la conexión a MySQL? En el punto MySQLdb.connect? También debería haber uno cuando alguna vez me consulta? ¿Qué excepciones debería estar atrapando en cualquiera de estos bloques? Gracias por cualquier ayuda Saludos […]

Mensaje de error de Python ValueError

¿Cómo puedo imprimir el mensaje de ValueError después de haberlo detectado?

(Unidad) Controlador de señales de python de prueba

Tengo un servicio Python simple, donde hay un bucle que realiza alguna acción infinitamente. En varias señales, se sys.exit(0) , lo que hace que SystemExit y luego, si es posible, debe realizarse una limpieza. En una prueba, es decir, unittest.TestCase estándar, me gustaría probar que esta limpieza se realiza y el bucle sale. Sin embargo, […]

no puede capturar SQLAlchemy IntegrityError

Por más que lo intente, parece que no puedo capturar correctamente el IntegrityError sqlalchemy: from sqlalchemy import exc try: insert_record() except exc.IntegrityError, exc: print exc # this is never called handle_elegantly() # this is never called Como lo que uno podría esperar: IntegrityError: (IntegrityError) insert or update on table “my_table” violates foreign key constraint “my_table_some_column_fkey” […]

¿Por qué levantar una tupla funciona si el primer elemento es una excepción?

Me cuesta entenderlo, se trata de errores que se pueden hacer al generar una excepción en Python 2.7: try: raise [1, 2, 3, 4] except Exception as ex: print ex el mensaje aquí es “las excepciones deben ser de estilo antiguo o derivadas de BaseException, no de la lista”: esta parte está bien, pero cuando […]