#python #exception
Вопрос:
У меня есть свой собственный модуль M и приложение Django X, которое будет вызывать M. Модуль M выглядит так:
def main(argv):
# do some pre-processing and then call
try:
do_whatever(input_arguments)
except Exception as e:
# caught exception code
# do some post-processing and exit
if __name__ == "__main__":
main(sys.argv)
Без main
функции я улавливаю любые исключения, которые могут возникнуть при выполнении функции do_whatever()
Однако, что лучше для перехвата и обработки исключений из самого выполнения main
?
Вариант А
def main(argv):
try:
# all main code
except Exception as e:
# caught exception code
Вариант В
try:
main(sys.argv)
except Exception as e:
# caught exception code
Вариант С
Из приложения X
try:
M.main(arguments)
except Exception as e:
# caught exception code
Не стесняйтесь также обсуждать рекомендации по проектированию модулей, особенно когда они используются в среде Django и веб-разработки.
Спасибо