【问题标题】:Python: make turtle move based on user inputPython:根据用户输入使乌龟移动
【发布时间】:2017-04-12 11:49:19
【问题描述】:

本应根据用户输入使海龟移动到某个方向的代码有什么问题?

import turtle


myTurtle = turtle.Turtle()



instruction = input()




xCor = myTurtle.position() + 10
yCor = myTurtle.position() - 0


if instruction == "right":
    myTurtle.goto(xCor,yCor)

PS:我是初学者,所以请不要因为给出一个非常复杂的答案而让我感到沮丧xD

【问题讨论】:

  • 请将实际代码作为文本发布在您的帖子中,而不是您的代码图像。
  • 将您的代码发布为文本
  • 对不起,这样做太麻烦了,因为它不会让我在文本中有缩进,所以我只是将它作为图像发布(这是我第一次实际上发布了一个关于堆栈溢出的问题,这就是我如此困惑的原因)

标签: python turtle-graphics


【解决方案1】:

您的问题是这一行(以及相关的yCor 一行):

xCor = myTurtle.position() + 10

position() 返回一个包含 X 和 Y 的元组,而不是数字。你可能想要的是这样的:

import turtle

myTurtle = turtle.Turtle()

instruction = input()

xCor = myTurtle.xcor() + 10
yCor = myTurtle.ycor() - 0

if instruction == 'right':
    myTurtle.goto(xCor, yCor)

turtle.done()

【讨论】:

  • 非常感谢@cdlane 起初我有点困惑,因为我看到变量 xcor/ycor 等于 myTurtle.xCor/yCor,但现在我将变量名改为 xPos/yPos .