我需要使用rgb值生成一个随机颜色来填充这些矩形以进行python学校作业,即使我非常确定格式化,我也会收到错误的颜色序列错误正如Python documentation所暗示的那样。
r = random.randrange(0, 257, 10)
g = random.randrange(0, 257, 10)
b = random.randrange(0, 257, 10)
def drawRectangle(t, w, h):
t.setx(random.randrange(-300, 300))
t.sety(random.randrange(-250, 250))
t.color(r, g, b)
t.begin_fill()
for i in range(2):
t.forward(w)
t.right(90)
t.forward(h)
t.right(90)
t.end_fill()
t.penup()
我很困惑为什么t.color(r,g,b)没有产生随机颜色?
答案 0 :(得分:4)
答案 1 :(得分:1)
您的变量r g和b不是全局变量。您必须在函数顶部添加全局声明或将它们添加为参数。
def my_function(r, g, b):
# some stuff
或者...
def myfunction():
global r, g, b
# some stuff