У меня есть приложение, которое должно работать во всех «современных» версиях Python, что означает 2.5
- 3.2
. Мне не нужны две базы кода, поэтому 2to3
не является вариантом.Совместимость с Python: Захватывающие исключения
Рассмотрим что-то вроде этого:
def func(input):
if input != 'xyz':
raise MyException(some_function(input))
return some_other_function(input)
Как я могу поймать это исключение, чтобы получить доступ к объекту исключения? except MyException, e:
недействителен в Python 3, а except MyException as e:
недействителен в python 2.5.
Очевидно, что было возможно вернуть объект исключения, но я надеюсь, что мне не нужно это делать.