使用pyinstaller转换为.exe后,在没有打开控制台的情况下退出pygame窗口时,“无法执行脚本myscript”

时间:2019-07-09 18:21:14

标签: python pygame pyinstaller

我有一个小的计时器脚本,可通过pygame窗口显示信息。我可以将其作为脚本很好地运行。当我使用pyinstaller将其转换为.exe时,它仍然可以正常运行,但是当我通过按下窗口顶部的“ x”退出时,出现错误消息“无法执行脚本myscript”。我认为我的结束代码有问题。

如果有关系,我正在运行pyinstaller,其中包含-F(创建单个文件)和-w(无控制台窗口)选项

我已按照此处其他线程中的建议向关闭代码添加了新参数。我当前的退出代码如下。

for event in pygame.event.get(): 
    if event.type == pygame.QUIT:
        pygame.display.quit()
        pygame.quit()
        exit()

我只希望它完全关闭而没有错误

2 个答案:

答案 0 :(得分:1)

解决了这个问题,我没有正确导入sys。 exit()在IDLE中显示为关键字,因此我认为这是一个基本命令。我将“ import sys”行添加到顶部,并将结束行更改为“ sys.exit()”,它按预期运行。

答案 1 :(得分:0)

使用

import sys

#insert code here


sys.exit()

代替

exit()

exit()命令用于退出python shell。参见here