You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pygame窗口随while run循环立即关闭问题求助

问题解决:Pygame窗口立即关闭的原因

你的代码里存在一个关键语法错误,导致main()函数从未被执行,这就是窗口立即关闭的核心原因:

把代码末尾的判断语句:

if __name__ == "__name__":
    main()

修改为:

if __name__ == "__main__":
    main()

修正后的完整代码:

import pygame

WIDTH, HEIGHT = 900, 500
WIN = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("First game")

BACKGROUND = (255, 255, 255)


def main():
    run = True
    while run:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                run = False
        WIN.fill(BACKGROUND)
        pygame.display.update()
    
    pygame.quit()


if __name__ == "__main__":
    main()

原因说明:

__name__是Python的内置变量,当脚本直接作为主程序运行时,它的值会被设为"__main__";如果脚本被作为模块导入到其他文件中,__name__的值则是模块名。你之前的判断条件永远不会成立,因此main()函数没有被调用,程序直接执行到pygame.quit(),导致窗口刚创建就被关闭。

内容的提问来源于stack exchange,提问作者RSMP

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 04:37:01