【发布时间】:2020-04-08 19:41:48
【问题描述】:
在 wxPython 下,当主循环中出现未处理的异常时,会打印回溯并忽略异常。 在 PyCharm 下调试时并非如此。然后未处理的异常导致进程终止。 此外,这是新的行为,因为之前版本的 PyCharm 并没有这种行为。
拿下面的测试代码:
import wx
import wx.lib.sized_controls as sc
def Raise(evt=None):
raise Exception('error')
app = wx.App()
frame = sc.SizedFrame(None,-1,'hello')
p = frame.GetContentsPane()
b = wx.Button(p,-1,'press')
frame.Bind(wx.EVT_BUTTON,Raise,b)
frame.Show()
app.MainLoop()
在运行时按下按钮通常会导致打印并忽略异常。 在 PyCharm 调试模式下运行时,进程终止。 有没有办法改变这种行为?
Windows10、Python3.6、wxPython 4.0.4、PyCharm 2019.3
【问题讨论】:
-
现在从 2019.1 版本开始,这已被验证为 PyCharm(回归)中的一个错误。 2018.x 版本不受影响。如果有人想观看,请链接到此处发布的问题:youtrack.jetbrains.com/issue/PY-40039
标签: python debugging pycharm wxpython