Как уничтожить исключение в python3? - PullRequest
0 голосов
/ 11 мая 2018

Этот код:

try:
    raise ValueError(1,2,3)
except ValueError as (a,b,c):
    print("a=%s, b=%s, c=%s" % (a,b,c))

печатает a=1, b=2, c=3 в Python 2, но вызывает SyntaxError в Python 3:

    except ValueError as (a,b,c):
                         ^
SyntaxError: invalid syntax

Как деструктурировать исключения в Python 3?

Кажется, что работает следующее (вдохновлено учебником ):

try:
    raise ValueError(1,2,3)
except ValueError as ex:
    a,b,c = ex.args
    print("a=%s, b=%s, c=%s" % (a,b,c))

но безобразно (и добавляет дополнительную строку кода), что является PITA при преобразовании кодовой базы 2 в 3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...