keepGoing = True
while keepGoing:
score+=1
myfont = pygame.font.SysFont("monospace", 15)
label = myfont.render(str(score), 1, (255,255,0))
screen.blit(label, (100, 100))
这是我的代码但是当我运行该程序时它会正确地增加分数 - 但是当它输出到屏幕时它不会关闭前一个数字,所以当它在屏幕上打印1然后是2时1不会t擦除2个节目写在它上面。因为这一段时间后我才在屏幕上看到一个黄色的块。
答案 0 :(得分:1)
您收到错误
NameError: name 'score' is not defined
因为您正在尝试更新尚未定义的变量。即使+=
包含等号,您仍需要在使用score
之前定义+=
keepGoing = True
score = 0
while keepGoing:
score += 1
答案 1 :(得分:0)
你应该定义分数,比如
keepGoing = True
score = 0
然后它有效。
答案 2 :(得分:0)
我不知道python,但根据症状我的猜测是你必须先清除屏幕才能写出新内容。这个问题可能就是这样做的。