'Set turtle shape to shape with given name / return current shapename.
Optional argument:
name -- a string, which is a valid shapename
Set turtle shape to shape with given name or, if name is not given,
return name of current shape.
Shape with name must exist in the TurtleScreen\'s shape dictionary.
Initially there are the following polygon shapes:
\'arrow\', \'turtle\', \'circle\', \'square\', \'triangle\', \'classic\'.
To learn about how to deal with shapes see Screen-method register_shape.
Example (for a Turtle instance named turtle):
>>> turtle.shape()
\'arrow\'
>>> turtle.shape("turtle")
>>> turtle.shape()
\'turtle\''

def shape(self, name=None):

    if (name is None):
        return self.turtle.shapeIndex
    if (not (name in self.screen.getshapes())):
        raise TurtleGraphicsError(('There    is    no    shape    named    %s' % name))
    self.turtle._setshape(name)
    self._update()
