gpt4 book ai didi

python - 处理笔记本异常的 Jupyter 魔法

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

我在我的 Jupyter Notebook 中进行了一些长时间运行的实验。因为我不知道他们什么时候完成,所以我在笔记本的最后一个单元格添加了一个电子邮件功能,所以当笔记本完成时我会自动收到一封电子邮件。

但是当其中一个单元格中出现随机异常时,整个笔记本停止执行并且我再也没有收到任何电子邮件。 所以我想知道是否有一些神奇的函数可以在异常/内核停止的情况下执行一个函数。

喜欢

def handle_exception(stacktrace):
send_mail_to_myself(stacktrace)


%%in_case_of_notebook_exception handle_exception # <--- this is what I'm looking for

另一种选择是将每个单元封装在 try-catch 中,对吗?但这太乏味了。

提前感谢您的任何建议。

最佳答案

这样的魔法命令是不存在的,但是你可以自己写。

from IPython.core.magic import register_cell_magic

@register_cell_magic('handle')
def handle(line, cell):
try:
exec(cell)
except Exception as e:
send_mail_to_myself(e)
raise # if you want the full trace-back in the notebook

不可能为整个笔记本自动加载魔术命令,您必须在需要此功能的每个单元格中添加它。

%%handle

some_code()
raise ValueError('this exception will be caught by the magic command')

关于python - 处理笔记本异常的 Jupyter 魔法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40110540/

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