Vorrei ottenere il nome chiave dal un'eccezione Python KeyError
:Get nome della chiave da un'eccezione Python KeyError
Ad esempio:
myDict = {'key1':'value1'}
try:
x1 = myDict['key1']
x2 = myDict['key2']
except KeyError as e:
# here i want to use the name of the key that was missing which is 'key2' in this example
print error_msg[missing_key]
ho già provato questo
print e
print e.args
print e.message
il mio codice è dentro la vista di Django!
se uso ipython per esempio e provo e.arg o e.message funziona correttamente. ma poi la provo mentre all'interno una vista Django ottengo questo risultato:
"Key 'key2' not found in <QueryDict: {u'key1': [u'value']}>"
("Key 'key2' not found in <QueryDict: {u'key1': [u'value']}>",)
Key 'key2' not found in <QueryDict: {u'key1': [u'value']}>
mentre io voglio solo il 'key2'
E 'solo per la registrazione o stai effettivamente facendo qualcosa con la chiave? – NPE
usa semplicemente 'e.args [0]'. –
puoi vedere che se uso args [0] ottengo il primo elemento dalla tupla che è lo stesso che ottengo quando stampo e.message – yossi