Введение в Python через модуль «Черепашка»

Разделы: Информатика, Технология


Об языке

Python - высокоуровневый язык программирования общего назначения с динамической строгой типизацией и автоматическим управлением памятью, ориентированный на повышение производительности разработчика, читаемости кода и его качества. Синтаксис ядра языка минималистичен, за счёт чего на практике редко возникает необходимость обращаться к документации.

О модуле

Библиотека turtle - это расширения языка Питон, позволяющее рисовать на экране несложные рисунки. По экрану компьютера ползает маленькая черепашка (`turtle'). Вы можете управлять движением черепашки, отдавая ей различные команды.

Что из себя представляет «холст»

  1. Изначально черепашка стоит в центре всплывающего окна, размеры которого можно регулировать, и смотрит вправо
  2. Холст представляет из себя координатную плоскость с центром в середине и осями, направленными вправо и вверх, у каждого пикселя, соответственно, своя координата.

Команды перемещения черепашки

  • forward(n) или fd(n) - Проползти вперед n шагов (пикселей).
  • backward(n) или bk(n) - Проползти назад n шагов (пикселей).
  • left(angle) или lt(angle) - Повернуться налево на angle градусов.
  • right(angle) или rt(angle) - Повернуться направо на angle градусов.
  • circle(r) - Нарисовать окружность радиуса |r|, центр которой находится слева от черепашки, если r>0 и справа, если r<0.
  • circle(r,angle) - Нарисовать дугу радиуса |r| и градусной мерой angle.
  • Дуга рисуется против часовой стрелки, если r>0 и по часовой стрелке, если r<0.
  • goto(x,y) - Переместить черепашку в точку с координатами (x,y).

Команды рисования черепашки

  • down() - Опустить перо. После этой команды черепашка начнет оставлять след при любом своем передвижении.
  • up() - Поднять перо.
  • width(n) - Установить ширину следа черепашки в n пикселей.
  • сolor(s) - Установить цвет следа черепашки в s. s должно быть текстовой строкой,
  • заключенной в кавычки, с названием цвета (по-английски), например, "red", "yellow", "green" и т.д.
  • begin_fill() - Используется для начала рисования закрашенной области.
  • end_fill() - Используется для окончания рисования закрашенной области.

Прочие команды

  • reset() - Возврат черепашки в исходное состояние: очищается экран, сбрасываются все параметры, черепашка устанавливается в начало координат, глядя вправо.
  • сlear() - Очистка экрана.
  • write(s) - Вывести текстовую строку s в точке нахождения черепашки.
  • radians() - Установить меру измерения углов (во всех командах черепашки) в радианы.
  • degrees() - Установить меру измерения углов (во всех командах черепашки) в градусы. Этот режим включен по умолчанию.
  • shape("turtle") - Установить черепашке форму «черепашка»
  • speed(n) - Установить скорость черепашки

Зачем мы используем модуль?

  • Это интересно. Многие дети (да и взрослые) любят рисовать и создавать, проявляя свое творческое начало
  • Вычисление текущей позиции черепашки, угла поворота и тп развивают у детей математические способности и способности анализировать ситуацию
  • Дети приходят разного «уровня» программирования, с помощью черепашки можно в интересной форме понять основы языка, включая табуляцию, переменные, условный оператор, циклы, функции
  • Когда мы начинаем решать задачи, ребята уже знают как писать простые программы

Как проходят занятия

  • Знакомим детей со средой
  • Знакомим детей с модулем и простыми командами черепашки
  • Рисуем простейшие фигуры - квадрат, треугольник, звезда...
  • Фигуры посложнее - снеговик, смайлик...
  • Показываем, что многие вещи будет проще сделать с помощью цикла
  • Вводим понятие переменной, а затем и функции, тем самым рисунок перестает быть статичным

Далее вас ограничивает лишь ваша фантазия.

Программа для рисования квадрата

import turtle # Подключаем модуль
turtle.forward(20) # Проползти 20 пикселей вперед
turtle.left(90) # Поворот влево на 90 градусов
turtle.forward(20)
turtle.left(90)
turtle.forward(20) # Рисуем вторую сторону квадрата
turtle.left(90) # Рисуем третью сторону квадрата
turtle.forward(20) # Рисуем четвертую сторону

И еще раз квадрат:

import turtle # Подключаем модуль
turtle for i in range(4): # Повторить 4 раза
turtle.forward(20) # Проползти 20 пикселей вперед
turtle.left(90) # Поворот влево на 90 градусов

А можно так:

import turtle # Подключаем модуль
turtle i=0 #создаем счетчик
while i<4:
turtle.forward(20) # Проползти 20 пикселей вперед
turtle.left(90) # Поворот влево на 90 градусов
i+=1 # увеличиваем счетчик

С помощью функции:

def square(n): # Создаем функцию с параметром
n for i in range(4): # Повтори 4 раза
turtle.forward(n) # Проползти 20 пикселей вперед
turtle.left(90) # Поворот влево на 90 градусов
import turtle # Подключаем модуль
turtle a=int(input()) #Вводим длину стороны square(a)
#Вызываем функцию

Интересные факты

• Сохраняя, нельзя называть программу по имени модуля, т.е. «turtle», иначе Python пытаться импортировать вашу программу.

• Можно создать несколько черепашек. Для этого достаточно присвоить им имена. Например:

t1=turtle.Turtle()

t2=turtle.Turtle()

При этом можно управлять ими по отдельности, обращаясь по имени, например:

t1.shape("arrow")

t2.shape("turtle")

А если посложнее?

Для «продвинутых» ребят есть задания и посложнее. Например с помощью черепашки можно сделать ковёр и треугольник Серпинского.

Спасибо за внимание!

Удачи в экспериментах с черепашкой!