Как показать, почему “попытка” перестала работать в Python

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

пример:

try:
    1/0
except:
    someway to show 
    "Traceback (most recent call last):
       File "<pyshell#0>", line 1, in <module>
         1/0
    ZeroDivisionError: integer division or modulo by zero"

я не хочу делатьif:print error 1, elif: print error 2, elif: etc.... я хочу видеть ошибку, которую показали бы, имел try не там

9
задан calccrypto 7 June 2010 в 10:39
поделиться

2 ответа

Попробуйте:

>>> try:
...     1/0
... except Exception, e:
...    print e
... 
integer division or modulo by zero

Существуют и другие варианты синтаксиса, например: [

>>> try:
...     1/0
... except Exception as e:
...    print e
... 
integer division or modulo by zero

] Более подробную информацию можно найти в руководстве по ошибкам .

10
ответ дан 4 December 2019 в 11:40
поделиться

Я часто использую трассировку , чтобы записать такое исключение в журнал или показать на stderr:

import traceback
import sys

try:
    print 1/0
except Exception:
    s = traceback.format_exc()
    serr = "there were errors:\n%s\n" % (s)
    sys.stderr.write(serr) 

Вывод покажет информацию о строке, являющейся источником, где произошло исключение:

there were errors:
Traceback (most recent call last):
  File "c:\test\ex.py", line 5, in <module>
    print 1/0
ZeroDivisionError: integer division or modulo by zero
8
ответ дан 4 December 2019 в 11:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: