try:
    something here
except:
    print('the whatever error occurred.')
Как я могу напечатать ошибку/исключение в моем блоке except:?
try:
    something here
except:
    print('the whatever error occurred.')
Как я могу напечатать ошибку/исключение в моем блоке except:?
Для Python 2.6 и более поздних версий и Python 3.x:
except Exception as e: print(e)
Для Python 2.5 и более ранних версий используйте:
except Exception,e: print str(e)
 Модуль  traceback предоставляет методы для форматирования и печати исключений и их трассировок, например, это напечатало бы исключение как обработчик по умолчанию:
import traceback
try:
    1/0
except Exception:
    traceback.print_exc()
Выход:
Traceback (most recent call last):
  File "C:\scripts\divide_by_zero.py", line 4, in <module>
    1/0
ZeroDivisionError: division by zero
В Python 2.6 или выше он немного чище:
except Exception as e: print(e)
В старых версиях он все еще читаем:
except Exception, e: print e
Если вы хотите передать строки ошибок, вот пример из Ошибки и исключения (Python 2.6)
>>> try:
...    raise Exception('spam', 'eggs')
... except Exception as inst:
...    print type(inst)     # the exception instance
...    print inst.args      # arguments stored in .args
...    print inst           # __str__ allows args to printed directly
...    x, y = inst          # __getitem__ allows args to be unpacked directly
...    print 'x =', x
...    print 'y =', y
...
<type 'exceptions.Exception'>
('spam', 'eggs')
('spam', 'eggs')
x = spam
y = eggs
(Я собирался оставить это как комментарий к ответу @jldupont, но мне не хватает репутации.)
Я видел ответы вроде @jldupont в других местах. FWIW, я думаю, важно отметить, что это:
except Exception as e:
    print(e)
 по умолчанию выведет вывод ошибок в sys.stdout. Более подходящим подходом к обработке ошибок в целом будет:
except Exception as e:
    print(e, file=sys.stderr)
 (Обратите внимание, что вы должны import sys чтобы это работало.) Таким образом, ошибка печатается в STDERR вместо STDOUT, что позволяет правильно анализировать/перенаправлять вывод /etc. Я понимаю, что вопрос был строго о "печати ошибки", но, кажется, важно указать здесь лучшую практику, а не пропустить эту деталь, которая может привести к нестандартному коду для тех, кто в конечном итоге не научится лучше.
 Я не использовал модуль traceback как в ответе "Cat Plus Plus", и, может быть, это лучший способ, но я подумал, что выкину это туда.
Один вывод ошибки может быть сделан с помощью операторов assert, если это то, что вы хотите сделать. Это поможет вам написать статически исправимый код и заранее проверять ошибки.
assert type(A) is type(""), "requires a string"
Если вы хотите напечатать сообщение в stderr, выйдите с кодом состояния 1 (ошибка):
import sys
try:
    ...
except Exception as e:
    sys.exit("Message to print to stderr")