为了账号安全,请及时绑定邮箱和手机立即绑定

如果在 main 中定义了这个全局变量,为什么没有找到它?

如果在 main 中定义了这个全局变量,为什么没有找到它?

阿波罗的战车 2021-06-04 22:16:24
我制作了这个简单的脚本来尝试一些东西。基本上,它应该捕获在应用程序运行期间发生的任何异常并断开与服务器的连接。import sysimport tracebackfrom PyQt5.QtWidgets import *class Window(QWidget):    def __init__(self):        QWidget.__init__(self)        layout = QVBoxLayout()        self.setLayout(layout)        # Generate exception        raise Exception('Oh no!')    def foo(self):        print('Bar')def error_handler(etype, value, tb):    global ex    error_msg = ''.join(traceback.format_exception(etype, value, tb))    print(error_msg)    ex.foo()    sys.exit(1)if __name__ == '__main__':    sys.excepthook = error_handler    app = QApplication([])    ex = Window()    ex.show()    app.exec_()如果变量是在 main 中定义的,为什么错误处理程序找不到它?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 203 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信