3. Instances — A Herd of Turtles

Just like we can have many different integers in a program, we can have many turtles. Each of them is an independent object and we call each one an instance of the Turtle type (class). Each instance has its own state represented by its attributes and set via its methods. So, for example, alex might draw with a thin black pen and be facing east, while tess might be going in a different direction with a fat pink pen. Here is what happens when alex draws a square and tess draws a triangle:

Here are some Thinking like a computer scientist observations:

Check your understanding

Mixed up programs

        turtle-2-2: The following program has one turtle, "jamal", draw a capital L in blue and then another, "tina", draw a line to the west in orange as shown to the left, .  The program should do all set-up, have "jamal" draw the L, and then have "tina" draw the line.   Finally, it should set the window to close when the user clicks in it.

Drag the blocks of statements from the left column to the right column and put them in the right order. Then click on Check Me to see if you are right. You will be told if any of the lines are in the wrong order.

import turtle wn = turtle.Screen() --- jamal = turtle.Turtle() jamal.pensize(10) jamal.color("blue") jamal.right(90) jamal.forward(150) --- jamal.left(90) jamal.forward(75) --- tina = turtle.Turtle() tina.pensize(10) tina.color("orange") tina.left(180) tina.forward(75) --- wn.exitonclick()
        turtle-2-3: The following program has one turtle, "jamal", draw a line to the north in blue and then another, "tina", draw a line to the east in orange as shown to the left, .  The program should import the turtle module, get the window to draw on, create the turtle "jamal", have it draw a line to the north, then create the turtle "tina", and have it draw a line to the east. Finally, it should set the window to close when the user clicks in it.

Drag the blocks of statements from the left column to the right column and put them in the right order. Then click on Check Me to see if you are right. You will be told if any of the lines are in the wrong order.

import turtle --- wn = turtle.Screen() --- jamal = turtle.Turtle() jamal.color("blue") jamal.pensize(10) --- jamal.left(90) jamal.forward(150) --- tina = turtle.Turtle() tina.pensize(10) tina.color("orange") tina.forward(150) --- wn.exitonclick()