Я написал код для рисования транспортира. Вот результат:

Вот код:
from turtle import *
c = getcanvas()
s = Screen()
s.setup(612, 328)
tracer(0)
t = Turtle()
t.hideturtle()
t.penup()
t.width(1.5)
def every_10(): # function called when ang%10 = 0
t.penup()
t.fd(36)
t.pendown()
t.fd(170) # length of long line from centre
t.penup()
t.fd(11) # move turtle out before writing first number
# create canvas text object with rotated text
angle_text = c.create_text(t.xcor(), -t.ycor(),
font=('Arial', 13, 'bold'),text=str(ang),
angle=(ang-90), anchor='center')
t.write(angle_text) # write rotated first number
t.fd(18) # move turtle out before writing second number
angle_text = c.create_text(t.xcor(), -t.ycor(),
font=('Arial', 13, 'bold'),text=str(180-ang),
angle=(ang-90), anchor='center')
t.write(angle_text) # write rotated second number
t.fd(14) # move turtle out before drawing final line
t.pendown()
t.fd(50) # length of final line
t.penup()
# move to starting position, draw small circle and horizontal and vertical lines
t.goto( 36, -138)
t.left(90)
t.pendown()
t.circle(36, 180)
t.goto(0, -138)
t.goto(0, -102)
t.goto(0, -138)
t.goto(36, -138)
t.penup()
# loop through angles from 0 to 180
for ang in range(181):
t.penup()
t.goto( 0, -138)
t.setheading(ang)
if ang % 10 == 0:
every_10()
elif ang % 5 == 0:
t.fd(261)
t.pendown()
t.fd(38)
else:
t.fd(276)
t.pendown()
t.fd(23)
update()
Подробнее здесь: https://stackoverflow.com/questions/790 ... ional-text