Меня недавно укусило что-то неожиданное. Я хотел сделать что-то вроде этого:
try :
thing.merge(iterable) # this is an iterable so I add it to the list
except TypeError :
thing.append(iterable) # this is not iterable, so I add it
Ну, он работал нормально, пока я не передал объект, наследующий от Exception, который должен был быть добавлен.
К несчастью, Исключение повторяется. Следующий код не вызывает никаких TypeError
:
for x in Exception() :
print 1
Кто-нибудь знает, почему?