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

Pygame画线不显示问题排查:我的代码为何无法绘制线条?

Pygame线条不显示的问题排查与修复

嘿,我帮你看了下代码,线条没显示主要有几个关键问题,咱们一个个解决:

1. 先修正语法错误

你第一行的导入语句写法不符合Python语法规范:

import sys, pygame from pygame.locals import*

得拆成两行才对:

import sys, pygame
from pygame.locals import *

这个错误会直接导致代码运行失败,先把它改过来。

2. 核心问题:绘制和显示更新的顺序搞反了

你现在的代码逻辑是:先填充背景色→立刻刷新显示→再绘制线条。这时候线条确实画出来了,但画在已经显示过的内存画布上,没有再次刷新屏幕,所以你看不到它。

正确的流程应该是:清屏→绘制所有元素→刷新显示,而且启动Pygame必须先调用pygame.init()初始化,你原代码里漏掉了这个关键步骤,容易导致各种异常。

修正后的完整代码

import sys, pygame
from pygame.locals import *

width = 1000
height = 500
screen_color = (49, 150, 100)
line_color = (255, 0, 0)

def main():
    # 初始化Pygame
    pygame.init()
    screen = pygame.display.set_mode((width, height))
    pygame.display.set_caption("4x4 Grid Demo")  # 给窗口加个标题,可选
    
    while True:
        # 处理退出等事件
        for event in pygame.event.get():
            if event.type == QUIT:
                sys.exit(0)
        
        # 绘制流程:先清屏,再画线条,最后更新显示
        screen.fill(screen_color)
        # 可以加个线条宽度参数(第三个参数),让线条更显眼,默认1像素也能显示
        pygame.draw.line(screen, line_color, (60, 80), (130, 100), 2)
        pygame.display.flip()

if __name__ == "__main__":
    main()

现在运行这段代码,红色线条应该就能正常显示了。之后你要做4×4的区域,只需要在绘制部分循环添加横竖线条就行啦~

内容的提问来源于stack exchange,提问作者J.Gor

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 06:49:00