在pyqt中使用sys.exit()和app.exec_

时间:2014-08-01 08:27:48

标签: python pyqt

有人能解释使用sys.exit(app.exec_())而不是更简单的app.exec_()在PyQt中启动GUI的相对优点吗?

我是PyQt的新手并且看过两个例子。

1 个答案:

答案 0 :(得分:10)

当Unix风格的应用程序退出时,they return a number to their parent process会调用“状态代码”'或者退出状态'。 0用于表示成功;任何非零都是失败的。 (已经尝试standardise the meaning of error codes,但它通常仍然留给每个程序。)

app.exec_() runs your main loop, and returns a status code when it exitssys.exit(n)退出您的应用程序并将n返回到父进程(通常是您的shell)。所以区别在于,当程序退出时,较长的版本会传递状态代码。使用sys.exit(app.exec_())会更好,因为系统的其他部分可以检测程序何时因错误而退出。