Python 在我的主函数中,我不知道如何将海龟和屏幕从一个函数传递到另一个函数
我刚开始编程。我会尽量澄清的。这可能不是恰当的礼节,但我仍然好奇我应该如何完成我正在尝试做的事情。任何帮助都将不胜感激。这是我的主要功能Python 在我的主函数中,我不知道如何将海龟和屏幕从一个函数传递到另一个函数,python,Python,我刚开始编程。我会尽量澄清的。这可能不是恰当的礼节,但我仍然好奇我应该如何完成我正在尝试做的事情。任何帮助都将不胜感激。这是我的主要功能 def main(): y = turtlesetup() moveturtle(y) wn.exitonclick() 这是套头衫的设置: def turtlesetup(): t = turtle.Turtle() o = turtle.Turtle() wn = turtle.Scree
def main():
y = turtlesetup()
moveturtle(y)
wn.exitonclick()
这是套头衫的设置:
def turtlesetup():
t = turtle.Turtle()
o = turtle.Turtle()
wn = turtle.Screen()
t.shape('turtle')
o.shape('turtle')
o.color("red")
starttx = random.randrange(-50,50)
startty = random.randrange(-50,50)
startox = random.randrange(-50,50)
startoy = random.randrange(-50,50)
o.penup()
o.setpos(startox,startoy)
o.pendown()
t.penup()
t.setpos(starttx,startty)
t.pendown()
return(wn,t,o)
以及:
def moveturtle(wn,t,o):
while isInScreen(wn,t,o):
angle = random.randrange(1, 361)
angleo = random.randrange(1,361)
t.right(angle)
o.right(angleo)
o.forward(50)
t.forward(50)
调用turtlesetup后,它将转到moveturtle,但我相信我会发现moveturtle()缺少两个必需的位置参数:“t”和“o”
. 我相信这是因为我需要将turtle对象和screen对象从turtle设置传递到moveturtle,但我没有正确地执行此操作。请原谅我缺乏想象力的变量,以及可能不正确地使用函数和主函数。谢谢您的时间。
moveturtle
接受3个参数,但您只传递了1个:turtlesetup返回的3个元素的元组
您可以通过如下方式调用moveturtle
来解决此问题:
moveturtle( y[0], y[1], y[2] )
或:
moveturtle(wn,t,o)
需要传递三个参数。显然,当您编写moveturtle(y)
时,它不满足三个参数的要求,因为y
是一个单参数。您编写了moveturtle()
函数,因此您应该知道希望它接收的三个值应该是什么,以及它们来自哪里,不是吗?(提示:turtlesetup()
的最后一行是return(wn,t,o)
,但您可以使用y=turtlesetup()
将该返回值分配给y
。您觉得这样对吗?)。不知何故,我期望回报(wn,t,o)来填补y。有点像y=wn,t,o。然后,我将y传递给moveturtle(y)。那么如何从setups turtle中提取wn、t、o对象,并使它们存在于main中呢?我相信这是现在的问题。在那之后,我可以把它传给你,没问题。当我放置y=turtlesetup()时,我试图完成这里提到的tuple选项:谢谢*他工作了。我没有试过其他方法。星星代表什么?
moveturtle( *y )