类型错误:起点必须是
问题描述:
我想画5个海龟整数,但我正在逐渐上线25.这一个TypeError
是我的代码:类型错误:起点必须是
import turtle
wn = turtle.Screen()
redrose = turtle.Turtle()
color = input("What will your background color be?")
fillcolor_f = input("What will the color of your rose be?")
redrose.hideturtle()
redrose.speed(30)
redrose.penup()
redrose.left(180)
redrose.forward(175)
redrose.right(90)
redrose.forward(30)
redrose.right(90)
redrose.pendown()
def drawRose(red):
redrose.color("pink")
redrose.fillcolor(fillcolor_f)
redrose.fill(True)
for i in range(red):
redrose.forward(i)
redrose.right(49)
for i in range(5):
drawRose(redrose)
redrose.penup()
redrose.forward(350)
redrose.right(144)
redrose.pendown()
redrose.fill(False)
drawRose(50)
wn.bgcolor(color)
我想画五朵玫瑰花,但它产生错误。我在interactivepython.org上做了这个。
答
您正在递归地调用drawRose
的错误参数。在第23行(for i in range(red):
),您预计red
是一个整数,就是它在第36行(drawRose(50)
)上首次调用时的整数。但是,然后在第27行(drawRose(redrose)
),您传递的是redrose
对象,这是一只乌龟。我不清楚你应该在那里通过什么。我怀疑你甚至想递归地调用它。我怀疑你实际上想要另一个功能,如drawPetal
。
+0
我怕我只是打掉你的所有行号与我的编辑,用两颗代码块顶部错位的行。好的一面是,它将误差('range(red)')放在_actual_25行,就像错误信息所说的那样。只需在每个答案的行号中加2。 –
我不能做了解释,因为我是一个中间编码 –
你有一个被称为像这通常会导致问题的函数变量:颜色 – palsch