微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

带有乌龟的Python:无明显原因,乌龟返回0,0

如何解决带有乌龟的Python:无明显原因,乌龟返回0,0

我正在使用repl.it来制作带有龟程序的python。我想挑战自己使它生成的任何随机名称(因为如果未指定,它会为您提供一个随机名称)。我得到了神奇的魔法

所以我的想法是一个上面闪闪发光的包装。

问题来了...由于某种原因,负责闪闪发光的海龟又回到了(0,0)!我从未告诉过他们这样做! 现在我的代码看起来效率低下,因为它为每个函数重新定义了turtle,但这仅仅是因为我有同样的问题,但观点不同!因此,通过在函数中定义它们,使它们成为函数本地的所有乌龟!但是它们没有返回到最后一个平方的原点,而是变为0,0!我从没告诉过他们做任何一个

帮助会很棒!祝你有美好的一天!

您可以找到项目/代码here

ps:问题似乎不是乌龟从0,0开始,即使我没有告诉它,它也只是在最后一个圆弧功能之后和up函数之前回到了0,0 >

解决方法

turtle模块是基于类的,每个新实例都从(0,0)开始。每次调用该函数时,您都会创建一个新实例:

def sparkle(x,y,color="#55f",fill=True,size=None):
    t = turtle.Turtle();
    …

您应该创建一个实例,并在每次调用该函数时将其传递给该函数。

def sparkle(turtle,x,size=None):
    …

t = turtle.Turtle();
spark(t,random.randint(-150,150),150))
spark(t,150))    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。