我正在使用PySide和PyQt进行GUI开发。我一直在使用这些代码来运行GUI应用程序:
app = QApplication(sys.argv)
ex = MyWin()
ex.show()
sys.exit(app.exec_())
无意中我发现如果我只用sys.exit(app.exec_())
替换app.exec_()
,该程序仍能正常工作并且可以正确退出。
那么这两者有什么区别?我有理由使用sys.exit(app.exec_())
吗?
答案 0 :(得分:1)
当我读到Python documentation时,参数arg
可以是一个给出退出状态的整数。因此,app.exec_()
的返回可以告诉code exit status
。正如QCoreApplication.exit (int returnCode = 0)
的文档所述,
按照惯例,returnCode为0表示成功,任何非零值表示错误。
因此,原因是告诉Python PyQt
的代码退出状态。如果你避免它,程序将立即关闭。