Это хорошая идея, чтобы поставить «попробовать ... кроме ...» в первой строке кода, чтобы поймать неизвестную ошибку? - PullRequest
0 голосов
/ 02 мая 2019

Я уже обработал некоторые исключения в своем коде, но я боюсь некоторых неожиданных ошибок, которые могут произойти. Допустим, код должен завершить три задачи. Можно ли так написать?

#Python 3.x

try:                 
    try:
        Task1()
    except KnownError1:
        Handler1()
    Task2()        # The second task is safe 
    try:
        Task3()
    except KnownError2:
        Handler2()   
except Exception:
    Handler3()

или я должен ловить неизвестную ошибку каждый раз, когда ловлю другие ошибки:

try:
    Task1()
except KnownError1:
    Handler1()
except Exception:
    Handler3()
Task2()       
try:
    Task3()
except KnownError2:
    Handler2()
except Exception:
    Handler3()

а почему?

1 Ответ

0 голосов
/ 02 мая 2019

В общем, это не хорошая практика, за исключением каждого исключения.

Но, если это имеет смысл, по-моему, первый - чище.

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