gpt4 book ai didi

异常处理

转载 作者:太空狗 更新时间:2023-10-29 21:14:17 25 4
gpt4 key购买 nike

我正在开发一个 Django 站点,但在尝试找出执行异常处理的最佳方法时遇到了麻烦。我一直在做

try:
Some code
except:
log error in my own words, i.e 'Some code' failed to execute
Some other code

这会捕获所有异常,从而确保我的网站不会出现 500 错误等。但是,以我有限的知识,我正在丢失实际的异常,这让调试变得非常痛苦。如何打印发生的错误?目前我注释掉 try: catch: 并查看错误并修复它。一定有更好的方法!

提前致谢

丰富

最佳答案

您在异常变量中捕获异常:

try:
# some code
except Exception, e:
# Log the exception.

有多种格式化异常的方法,日志记录模块(我假设你/Django 使用)支持格式化异常,异常本身通常在呈现为字符串时呈现有用的消息。

这是一个例子:

import logging
logging.basicConfig(level=logging.DEBUG)
logging.debug('This message should go to the log file')

try:
1/0
except Exception as e:
logging.exception(e)

此示例使用新的“as”语法来捕获 Python 2.6 及更高版本支持的异常。上面的输出是:

DEBUG:root:This message should go to the log file
ERROR:root:integer division or modulo by zero
Traceback (most recent call last):
File "untitled-1.py", line 6, in <module>
1/0
ZeroDivisionError: integer division or modulo by zero

关于异常处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4592162/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com