答案 0 :(得分:0)
对于事件队列中的每个事件,调用pygame.quit()
,这将取消所有pygame模块的初始化:
pygame.quit()
取消初始化所有pygame模块
quit() -> None
取消初始化所有先前已初始化的pygame模块。当Python解释器关闭时,无论如何都会调用此方法,因此您的程序不需要它,除非它想要终止pygame资源并继续执行。多次调用此函数是安全的,因为重复调用无效。
注意 调用
pygame.quit()
取消初始化所有pygame模块不会退出程序。考虑让您的程序以与普通Python程序相同的方式结束。
因此,在while
循环的下一个迭代中,由于视频系统不再初始化,因此对pygame.event.get()
的调用将失败。
您应该对照type
常量检查event
对象的pygame.QUIT
属性,而不要调用pygame.quit()
函数:
...
if event.type == pygame.QUIT:
...
通常不需要打{{1}}。