【发布时间】:2014-09-27 02:19:54
【问题描述】:
app = QtGui.QApplication(sys.argv)
# some code
app.exec_()
sys.exit()
或
sys.exit(app.exec_()) # This is how it is given in the zetcode tutorial.
两者有什么区别?
【问题讨论】:
标签: python python-2.7 user-interface pyqt
app = QtGui.QApplication(sys.argv)
# some code
app.exec_()
sys.exit()
或
sys.exit(app.exec_()) # This is how it is given in the zetcode tutorial.
两者有什么区别?
【问题讨论】:
标签: python python-2.7 user-interface pyqt
唯一不同的是,在第二个版本中,app.exec_() 的返回值作为参数传递给sys.exit(),这将成为应用程序的退出代码。如in the Python docs所述:
sys.exit([arg])
可选参数 arg 可以是一个给出退出状态的整数 (默认为零)或其他类型的对象。如果是整数, 零被认为是“成功终止”,任何非零值都是 被 shell 等视为“异常终止”。
如果您不关心反映事件循环退出状态的应用程序的退出代码,则无需这样做。我会说这样做是一个好习惯,因为如果您不冒泡返回值,您可能会无意中掩盖程序异常退出的事实。
【讨论】: