我试图声明一个python变量,该变量存储一个带有所需参数的函数,但是当我运行它时,它运行最后一个声明的变量。我试图将它存储在一个变量中,当我编写变量名时,它会运行带有相关参数的函数。它要在一个名为Processing的程序中运行:
size(1000,500)
background(255,255,255)
cred = fill(255,0,0)
corange = fill(255,127,0)
cyellow = fill(255,255,0)
cgreen = fill(0,255,0)
cblue = fill(0,0,255)
cpurple = fill(143,0,255)
mcolors = [cred,corange,cyellow, cgreen, cblue, cpurple]
y=0
def palette():
global y
global mcolors
for i in mcolors:
i
rect(0,y,20,20)
y+=22
palette() `
一种方法是将调用包装到lambda函数中:
要调用它,仍然需要
()
,即:不过,我认为在这种情况下,最好只存储颜色值,而不是实际的函数引用,即:
这将创建一个元组(有点像一个不可变的列表)。它不同于函数调用括号。之后,您可以将它们传递给循环中的函数:
星形运算符将使它使用元组中的值作为单独的参数,而不是一个参数。你知道吗
相关问题 更多 >
编程相关推荐