【发布时间】:2016-10-28 10:50:50
【问题描述】:
我有一个最初用 Python 3.4 和 PyQt4 编写的 Windows 应用程序,它通过信号和插槽将 stderr 重定向到对话框。 This posting 描述了我是如何工作的(见最后的代码)。它工作得很好,捕获了您通常会在控制台上看到的所有漂亮的详细 stderr 消息。这是一个典型的屏幕截图:
但是,当我安装 Python 3.5.2、PyQt5 并升级了我的几个包时,它不再工作了。现在,当我遇到错误时,我的整个应用程序会立即关闭,我无法追踪错误。
但是,当我在 pydev 调试器中运行我的应用程序时,我漂亮的窗口化 stderr 消息又回来了。我将调试器设置为中断所有错误,它确实如此,这允许我的窗口化 stderr 文本出现。
还有另一种方法可以恢复窗口错误消息:将我的一个核心包 (lmfit) 从最新的 0.9.5 恢复到我使用的早期 0.9.3。
谁能建议可能发生的事情?我询问了 lmfit 开发人员他们可能会改变什么,并尝试了十几种不同的替代方案,但都没有成功。
【问题讨论】:
标签: python python-3.x pyqt5 stderr