具有特定功能的循环圈

时间:2016-05-21 04:29:35

标签: python function python-3.x shapes turtle-graphics

回答

我需要创建一个名为" caterpillar()"的函数,这个函数用于连接我的draw_circle()函数,并且draw_line()函数一起创建一个caterpullar。我试图在while循环中使用draw_circle创建毛虫身体所需的三个圆圈。到目前为止,这是我的所有代码:

from turtle import *
import turtle


def moveto(x,y):
    penup()
    goto(x,y)
    pendown()




def draw_circle(xpos,ypos,radius,colour):
    moveto(xpos,ypos)
    circle(radius)
    turtle.fillcolor(colour)

def draw_line(x1, y1, x2, y2):
    penup()
    goto(x1,y1)
    pendown()
goto(x2,y2)

def draw_square(x,y,length,colour):
    moveto(x,y)
    forward(length)
    right(90)
    forward(length)
    right(90)
    forward(length)
    right(90)
    forward(length)
    turtle.fillcolor(colour)



def caterpillar():
    draw_line(0,30,-20,-15) # feelers
    draw_line(0,30,20,-15) # feelers
    draw_line(60,30,40,-15) # feelers
    draw_line(60,30,80,-15) # feelers
    draw_line(120,30,100,-15) # feelers
    draw_line(120,30,140,-15) # feelers


    for _ in range(3) : # 3 body circles
        xpos = 0
        ypos = 0
        radius = 30
        turtle.begin_fill()
        draw_circle(0,0,30,"green")
        turtle.end_fill()
        xpos = xpos + (radius*2)



caterpillar()

我被困在"的最后一部分,因为_在范围(3)" - 我需要在这些特定的坐标上使用draw_circle函数循环三个圆圈: Caterpillar

我已经被困在这几个小时了,任何帮助都会非常感激! 编辑: 也忘了提一下,我一直在卡特彼勒发现错误"文件" C:\ Users \ Rekesh \ Desktop \ caterpillar \ 1.py",第48行     xpos = xpos +(半径* 2) UnboundLocalError:局部变量' xpos'在分配之前引用 当我使用xpos = xpos时,我不确定是否需要这样做。

0 个答案:

没有答案