为了账号安全,请及时绑定邮箱和手机立即绑定

window.blit(textR,name) UnboundLocalError:

window.blit(textR,name) UnboundLocalError:

largeQ 2023-06-06 10:37:24
所以我有这个错误,一直说在赋值之前引用了名称,但我不知道赋值是什么,我试图让 textR 和名称成为女巫的地方,我试图把它所属的代码放在它上面并吼叫它但它仍然不起作用我也尝试将它从主循环中取出。我遇到问题的地方及其所属的代码window.blit(textR,name)    for power in powers:        if player1.rect.colliderect(power.rect):            power1.draw(player1.x,player1.y)            if Time < 30:                Time += 1                name = font.render("Timer = "+str(Time),True,(255,255,255))                textR.center = ((100,80))                player1.speed += 2            else:                power1.x  =9999
查看完整描述

1 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

name您尝试读取函数中的全局变量redrawwindow。由于变量在同一函数中被赋值,因此变量被解释为局部变量。
使用global语句 将变量解释为全局变量:

def redrawwindow():

    global name


    [...]


    window.blit(textR,name)



    for power in powers:

        if player1.rect.colliderect(power.rect):

            power1.draw(player1.x,player1.y)

            if Time < 30:

                Time += 1


                name = font.render("Timer = "+str(Time),True,(255,255,255))


    # [...]


查看完整回答
反对 回复 2023-06-06
  • 1 回答
  • 0 关注
  • 92 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信