Assign a Name to a Turtle

Learning Objectives:

Names can be more than numbers and strings. They can also be turtles or “screens” (a space on the page where a turtle can draw). You can also call things like turtles and screens objects. Objects in programming are the things that do the action in a program. Objects can have attributes and behavior. An example of an attribute is a position and an example of a behavior is the ability to go forward.

We have seen the example below once before. It allows us to use the turtle library, creates a space for a turtle object to draw on, creates a turtle object and names it alex, asks alex to go forward by 150 pixels, asks alex to turn left 90 degrees, and asks alex to go forward 75 pixels.

    csp-5-1-1: Which way does a turtle face when it is first created?
  • North
  • The turtles in some of the examples faced north because of the setheading(90) instruction. Which way does chad move first?
  • South
  • Which way does chad first move in the example above? North is at the top of the page.
  • East
  • Turtles start off facing east which is toward the right side of the page.
  • West
  • Which way does the turtle first move in the example above? North is at the top of the page.

What does a left turn of 90 mean?

When we ask a turtle to turn left, it will turn left based on the direction it is currently heading. A turtle object keeps track of its heading (direction it is facing). Use the figure below to help you understand how much the turtle will turn if asked to turn left 90 degrees and it is currently heading east (0 degrees).

shows what a turn of each degrees means for left and right turns

Figure 1: The amount of turn for specified degrees for left and right turns

Mixed up programs

        csp-5-1-2: The following program uses a turtle to draw a capital L as shown to the left,  but the lines are mixed up.  The program should do all necessary set-up: import the turtle module, get the space to draw on, and create the turtle.  The turtle should turn to face south, draw a line that is 150 pixels long, then turn to face east, and draw a line that is 75 pixels long.  We have added a compass to the picture to indicate the directions north, south, west, and east. 

Drag the needed blocks of statements from the left column to the right column and put them in the right order. There may be additional blocks that are not needed in a correct solution. 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 or are the wrong blocks.

from turtle import * --- from turtle Import * #paired --- space = Screen() --- space = screen() #paired --- ella = Turtle() --- ella.right(90) --- ella.turn(90) #paired --- ella.forward(150) --- ella.left(90) --- ella.forward(75) --- ella.go(75) #paired

Note

The following problem has a Help Me button. You can click on the Help Me button after you have made at least 3 full and distinct attempts to solve the problem to make the problem easier.

        csp-5-1-3: The following program uses a turtle to draw a checkmark as shown to the left,  but the lines are mixed up.  The program should do all necessary set-up: import the turtle module, get the space to draw on, and create the turtle.  The turtle should turn to face southeast, draw a line that is 75 pixels long, then turn to face northeast, and draw a line that is 150 pixels long.  We have added a compass to the picture to indicate the directions north, south, west, and east.  Northeast is between north and east. Southeast is between south and east. 

Drag the needed blocks of statements from the left column to the right column and put them in the right order. There may be additional blocks that are not needed in a correct solution. 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 or are the wrong blocks.

from turtle import * --- space = Screen() --- maria = Turtle() --- maria = Turtle #paired --- maria.right(45) --- maria.left(45) #paired --- maria.forward(75) --- maria.Forward(75) #paired --- maria.left(90) --- maria.right(90) #paired --- maria.forward(150)

Note

Discuss topics in this section with classmates.

Show Comments
Next Section - Procedures and Functions