Я пытаюсь построить пункт except
, что ловит все, кроме [так] конкретный тип исключения:Логическое «не» в Python исключение ловли
try:
try:
asdjaslk
except not NameError as ne: #I want this block to catch everything except NameError
print("!NameError- {0}: {1}".format(ne.__class__, ne))
except Exception as e: #NameError is the only one that should get here
print("Exception- {0}: {1}".format(e.__class__, e))
Язык принимает not
в предложении except
, но делает ничего с ним:
>>> Exception- <type 'exceptions.NameError'>: name 'asdjaslk' is not defined
можно ли это сделать, или я должен повторно raise
их?
или 'кроме NameError как пе: raise' – RickyA
Если Python принять Ложные как условие быть выброшен? –
Ммм, все еще странно, что язык def разрешает не здесь. – RickyA