Así que vamos a hacer un ejemplo rápido. my_list = [ {“name”: “toto”, “value”: 3}, {“name”: “foo”, “value”: 42}, {“name”: “bar”, “value”: 56} ] def foo(name): try: value = next(e[“value”] for e in my_list if e[“name”] == name) except StopIteration: print “Uuuh not found.” else: if value % 2: print “Odd !” else: print “Even […]
Ejecuto una aplicación de matraz simple como esta: from flask import Flask app = Flask(__name__) @app.route(‘/’) def welcome(): return “OK” app.config.update( DEBUG = True ) if __name__ == ‘__main__’: app.run(use_reloader = False) cuando lo ejecuto y lo visito, a veces (no siempre) no pudo responder a la solicitud y lanzar una excepción: Exception happened during […]
El tiempo de ejecución me sigue diciendo: espera un bloque sangrado Pero no quiero escribir nada dentro de mi bloque excepto, solo quiero que atrape y trague la excepción.
Si ejecuto el código: connection = manager.connect(“I2Cx”) El progtwig se bloquea e informa de un KeyError porque I2Cx no existe (debería ser I2C). Pero si lo hago: try: connection = manager.connect(“I2Cx”) except Exception, e: print e No imprime nada para e. Me gustaría poder imprimir la excepción que se lanzó. Si bash lo mismo con […]
Tengo un problema con mi código en el bloque try. Para hacerlo más fácil este es mi código: try: code a code b #if b fails, it should ignore, and go to c. code c #if c fails, go to d code d except: pass ¿Es algo como esto posible?
Tengo una buena comprensión de la cláusula try-except de python, pero tengo problemas al intentar ponerla dentro de una función. >>> def tryAppend(child, parent): … try: … parent.append(child) … except NameError: … print “WRONG NAME” >>> var1 = [] >>> var2 = ‘test2’ >>> tryAppend(var2, var1) #works, no error >>> tryAppend(foo, var1) Traceback (most recent […]
Introducción El módulo de cadena tiene una clase de Plantilla, que le permite hacer sustituciones en una cadena usando un objeto de mapeo, por ejemplo: >>> string.Template(‘var is $var’).substitute({‘var’: 1}) ‘var is 1’ El método de sustitución puede generar una excepción KeyError, si se intenta sustituir un elemento que falta en la asignación, por ejemplo […]
Quiero crear un archivo; Si ya existe quiero borrarlo y crearlo de nuevo. Intenté hacerlo así, pero arroja un error de Win32. ¿Qué estoy haciendo mal? try: with open(os.path.expanduser(‘~’) + ‘\Desktop\input.txt’): os.remove(os.path.expanduser(‘~’) + ‘\Desktop\input.txt’) f1 = open(os.path.expanduser(‘~’) + ‘\Desktop\input.txt’, ‘a’) except IOError: f1 = open(os.path.expanduser(‘~’) + ‘\Desktop\input.txt’, ‘a’)
Al depurar el código de Python en el indicador interactivo (REPL), a menudo escribo un código que genera una excepción, pero no lo envolví en un try / except , por lo que una vez que surge el error, siempre he perdido el objeto de excepción. A menudo, la traza y el mensaje de error […]
Tengo un código similar a este: import sys def func1(): func2() def func2(): raise Exception(‘test error’) def main(): err = None try: func1() except: err = sys.exc_info()[1] pass # some extra processing, involving checking err details (if err is not None) # need to re-raise err so caller can do its own handling if err: […]