该错误被称为:unbundLocalError:赋值前引用的局部变量“p”。 我想要它,这样我就可以用K和L改变笔的宽度,但它不允许我。你能帮我吗
from gturtle import*
keyK = 75
keyL = 76
P = 10
def colorKeys(key):
if key == keyK:
P = P - 2
elif key == keyL:
P = P + 2
makeTurtle(keyPressed = colorKeys)
hideTurtle()
while True:
setPenWidth(P)
函数
colorKeys(key)
中没有局部变量p。如果没有“Global”关键字,则无法在函数中更改全局变量(不建议使用“Global”关键字)要解决此问题,可以返回要添加到p的值:
如果确实希望在函数中使用全局变量,可以执行以下操作:
但总的来说,这是个坏主意
在函数外部创建的变量可以在函数中引用而不会出错,但不能修改。您必须将P设置为全局,在colorKeys中定义它,或者像处理colorKeys一样将其传递给colorKeys
相关问题 更多 >
编程相关推荐