我用游戏写了一个游戏。游戏运行良好,但当我退出并关闭窗口时,当窗口关闭时,本身不会退出,而是显示(没有响应),而我不得不强制退出。
我从导入几个模块开始代码
import random, pygame, sys
from pygame.locals import*代码中只有一个地方可以直接命令程序关闭。
def terminate():
pygame.quit()
sys.exit()要退出程序,始终运行terminate()函数。
我尝试将pygame.display.quit()添加到pygame.quit()之上,并以raise SystemExit代替sys.exit()
是什么原因导致python关闭窗口而不关闭自身呢?
发布于 2021-02-01 12:49:55
我不允许你退出。输入sys.exit()对我是无效的,您只需调用exit()退出程序即可。
这样你就可以这样关上窗户:
# main loop
running = True
while running:
for event in pygame.event.get():
if event.type == QUIT: # if the user closes the window
running = False
# after exiting mail loop
pygame.quit()
exit()根据this answer编辑,您应该更喜欢使用quit()而不是exit()
但是,
和
quit一样,在生产代码中使用exit被认为是不好的,应该保留给解释器使用。这是因为它也依赖于site模块。
既然我使用了quit(),我就不会遇到任何问题。
https://stackoverflow.com/questions/65983605
复制相似问题