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

Python 3.9.6环境下pygame屏幕不显示颜色 运行仅黑屏如何解决

代码错误点
  • 画面刷新方法pygame.display.update()放在了主循环外部,仅会在退出窗口时执行一次,运行过程中所有绘制操作都不会同步到窗口,所以一直显示黑屏。
  • 窗口初始化、标题、图标设置逻辑写在了display()函数中,而该函数在主循环内每次迭代都会调用,相当于每次循环都重新创建窗口对象,属于多余错误操作,还会额外消耗性能。
  • screen被定义为display()内的局部变量,后续如果要在其他位置绘制内容无法访问该对象,且pygame.quit()执行后还会调用一次display(),会触发pygame未初始化的报错。
修正后可运行代码
import pygame

pygame.init()

# 初始化操作仅执行一次,放在主循环外
screen = pygame.display.set_mode((1000, 800))
pygame.display.set_caption("Typing Racer!")
icon = pygame.image.load("exercise (1).png")
pygame.display.set_icon(icon)

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
            pygame.quit()
            # 直接跳出事件循环,避免后续绘制逻辑报错
            break
    
    # 仅在运行状态下执行绘制和刷新
    if running:
        screen.fill((92, 100, 150))
        pygame.display.update()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 10:09:02