Se eseguire il codice:Cattura KeyError in Python
connection = manager.connect("I2Cx")
il programma si blocca e segnala un KeyError perché I2Cx non esiste (dovrebbe essere I2C).
Ma se faccio:
try:
connection = manager.connect("I2Cx")
except Exception, e:
print e
E non stampa nulla per l'e. Mi piacerebbe essere in grado di stampare l'eccezione che è stata generata. Se provo la stessa cosa con un'operazione di divisione per zero, viene catturato e riportato correttamente in entrambi i casi. Cosa mi manca qui?
Nota a margine: a meno che non sia necessario il pre-2.5 compatibilità, dovresti scrivere 'except Exception as e:' invece di 'except Exception, e:'. – abarnert