Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 30, 2014 10:28:12

admiral
Зарегистрирован: 2013-12-23
Сообщения: 33
Репутация: +  0  -
Профиль   Отправить e-mail  

режим "debug" в конструкции try-except-else

Здравствуйте.
Как я понял, в питоне нет предкомпилятора. Реально ли сделать, к примеру как-то так?

DEBUG = True
try:
    func()
except SomeException1:
    func1()
except SomeException2:
    func2()
if DEBUG:
   except Exception:
       func3()
else:
   func4()
Это естественно код неправильный, т.к if будет выполняться всегда, питон его посчитает, что он не относится к try.
В программе я хочу отлавливить все возможные исключения. Т.е. включил режим DEBUG - и тестируй, как только исключение выскачит - программа завершится и выдаст мне название исключения. Когда же просто запускаю программу - я ставолю DEBUG = False - и программа работает не вываливаясь.

Если такое невозможно, то может как-то можно в func3() добавит вывод на экран или в logger этого исключение?



Win7 + Python3.3 + PyScripter

Офлайн

#2 Апрель 30, 2014 11:00:22

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

режим "debug" в конструкции try-except-else

Офлайн

#3 Апрель 30, 2014 18:19:56

admiral
Зарегистрирован: 2013-12-23
Сообщения: 33
Репутация: +  0  -
Профиль   Отправить e-mail  

режим "debug" в конструкции try-except-else

Честно, ничего не понял в том описании. Можете хоть чуть-чуть разжевать?



Win7 + Python3.3 + PyScripter

Офлайн

#4 Май 1, 2014 09:37:20

admiral
Зарегистрирован: 2013-12-23
Сообщения: 33
Репутация: +  0  -
Профиль   Отправить e-mail  

режим "debug" в конструкции try-except-else

admiral
Если такое невозможно, то может как-то можно в func3() добавит вывод на экран или в logger этого исключение?
Все, нашел как в логгере такое сделать.
logger.exception()



Win7 + Python3.3 + PyScripter

Офлайн

#5 Май 1, 2014 17:27:57

fongostev
От: Moskau
Зарегистрирован: 2012-04-03
Сообщения: 62
Репутация: +  4  -
Профиль   Отправить e-mail  

режим "debug" в конструкции try-except-else

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version