В материале представлены команды, отвечающие за рисование, передвижение, изменение направления, а так же настройка измерения величины угла поворота (градусы/радианы) в модуле turtle
.
При рисовании можно использовать как функции модуля, так и одноименные методы экземпляра пера/холста:
>>> import turtle # функция модуля >>> turtle.fd(150) # создание экземпляра пера >>> pen = turtle.Turtle() >>> pen.lt(90) >>> pen.fd(150)
turtle.forward()
двигает перо вперед,turtle.fd()
двигает перо вперед,turtle.back()
двигает перо назад,turtle.bk()
двигает перо назад,turtle.speed()
устанавливает.возвращает скорость передвижения пера,turtle.right()
поворачивает перо вправо,turtle.rt()
поворачивает перо вправо,turtle.left()
поворачивает перо влево,turtle.lt()
поворачивает перо влево,turtle.degrees()
устанавливает единицы угла в градусы/градианы,turtle.radians()
устанавливает единицы угла в радианы,turtle.setheading()
устанавливает ориентацию/направление движения пера,turtle.seth()
устанавливает ориентацию/направление движения пера,turtle.home()
перемещает перо в начало координат,turtle.undo()
отменяет действие пера.turtle.forward(distance)
,turtle.fd(distance)
:Методы turtle.forward
и turtle.fd()
передвигают перо черепахи вперед на указанное расстояние distance
и в том направлении, в котором она движется.
Аргумент distance
принимает число int
или float
.
>>> turtle.position() # (0.00,0.00) >>> turtle.forward(25) >>> turtle.position() # (25.00,0.00) >>> turtle.forward(-75) >>> turtle.position() # (-50.00,0.00)
turtle.back(distance)
,turtle.bk(distance)
:Методы turtle.back(distance)
и turtle.backward()
передвигают перо черепахи назад на расстояние distance
, в противоположном направлении, в котором она движется. Этот метод не меняет угол/направление черепахи.
Аргумент distance
принимает число int
или float
.
>>> turtle.position() # (0.00,0.00) >>> turtle.backward(30) >>> turtle.position() # (-30.00,0.00)
turtle.speed(speed=None)
:Метод turtle.speed()
задает скорость перемещения пера черепахи по холсту целым числом в диапазоне 0 - 10 или строкой, означающей скорость.
Если аргумент не указан, то возвращает текущую скорость.
Если число speed
больше 10 или меньше 0,5, то скорость устанавливается равной 0. Строки скорости сопоставляются со значениями скорости следующим образом:
'fastest'
: 0'fast'
: 10'normal'
: 6'slow'
: 3'slowest'
: 1>>> turtle.speed() # 3 >>> turtle.speed('normal') >>> turtle.speed() # 6 >>> turtle.speed(9) >>> turtle.speed() # 9
turtle.right(angle)
,turtle.rt(angle)
:Методы turtle.right()
и turtle.rt()
поворачивают черепаху вправо на единицу измерения угла angle
.
Единицы измерения угла по умолчанию - градусы, но их можно задать с помощью функций turtle.degrees()
и turtle.radians()
. Ориентация угла зависит от режима turtle.mode()
пера черепахи.
Аргумент angle
принимает число int
или float
.
>>> turtle.heading() # 22.0 >>> turtle.right(45) >>> turtle.heading() # 337.0
turtle.left(angle)
,turtle.lt(angle)
:Методы turtle.left()
и turtle.lt()
поворачивают черепаху влево на единицу измерения угла angle
.
Аргумент angle
принимает число int
или float
.
>>> turtle.heading() # 22.0 >>> turtle.left(45) >>> turtle.heading() # 67.0
turtle.degrees(fullcircle=360.0)
:Метод turtle.degrees()
устанавливает единицы измерения угла, т. е. задает количество градусов для полного круга. Значение по умолчанию это 360 градусов.
Аргумент fullcircle
- целое число int
.
>>> turtle.home() >>> turtle.left(90) >>> turtle.heading() # 90.0
Пример изменения единицы измерения угла в градиан (который равен 1/100-й части прямого угла).
>>> turtle.degrees(400.0) >>> turtle.heading() # 100.0 >>> turtle.degrees(360) >>> turtle.heading() # 90.0
turtle.radians()
:Метод turtle.radians()
устанавливает единицы измерения угла в радианы. Эквивалентно градусам как 2 * math.pi
.
>>> turtle.home() >>> turtle.left(90) >>> turtle.heading() # 90.0 >>> turtle.radians() >>> turtle.heading() # 1.5707963267948966
turtle.setheading(to_angle)
,turtle.seth(to_angle)
:Методы turtle.setheading()
и turtle.seth()
устанавливает направление движения (ориентацию) пера черепахи в значение to_angle
.
Аргумент to_angle
- число (int
или float
).
Вот некоторые общие направления в градусах:
standard mode | logo mode |
0 - east | 0 - north |
90 - north | 90 - east |
180 - west | 180 - south |
270 - south | 270 - west |
>>> turtle.setheading(90) >>> turtle.heading() # 90.0
turtle.home()
:Метод turtle.home()
перемещает черепаху в начало координат (координаты (0,0)) и устанавливает его заголовок в начальную ориентацию, которая зависит от turtle.mode()
.
>>> turtle.heading() # 90.0 >>> turtle.position() # (0.00,-10.00) >>> turtle.home() >>> turtle.position() # (0.00,0.00) >>> turtle.heading() # 0.0
turtle.undo()
:Метод turtle.undo()
отменяет (можно повторять многократно) последнее действие(я) черепахи.
Количество доступных действий отмены определяется размером буфера отмены.
>>> for i in range(4): ... turtle.fd(50); ... turtle.lt(80) ... >>> for i in range(8): ... turtle.undo()