Как сделать дом питон черепашкой

Добавил пользователь Евгений Кузнецов
Обновлено: 18.09.2024

Библиотека Turtle позволяет быстро рисовать разнообразные фигуры при помощи незамысловатых методов. В ходе статьи мы выполним построение главного персонажа из игры Among Us.

Библиотека Turtle

Рассказывать про игру Among Us мы не будем, но вместо этого немного расскажем относительно библиотеки Turtle.

Графика с черепахой (Turtle с англ. – черепаха) – популярный способ познакомить детей с программированием. Представьте себе роботизированную черепаху, начинающуюся с точки (0, 0) в плоскости x-y. Именно такая черепаха есть в этой библиотеки. Вы можете передвигать её и в зависимости от ее передвижения будут создаваться объекты любых форм.

Библиотека имеет набор очень простых методов, что можно использовать для создания различных рисунков.


Установка Turtle

Для установки Turtle вам потребуется пакетный менеджер PIP, что предоставляется вместе с самим языком Python. Создайте проект в любом IDE, например в PyCharm, и далее через терминал выполните установку библиотеки PythonTurtle .

Для тех кто на Linux, то вам нужно прописать дополнительные команды, что представлены на странице с PythonTurtle .

Создание проекта

Ниже представлен код готового приложения на Turtle. Если нужно больше информации, то просмотрите обучающее видео в конце этой статьи.

Видео на эту тему

Детальный разбор Turtle вы можете просмотреть на видео ниже. В видео уроке показан полный разбор библиотеки и её возможностей.


Дополнительный курс

На нашем сайте также есть углубленный курс по изучению языка Питон . В ходе огромной программы вы изучите не только язык Питон, но также научитесь создавать веб сайты за счёт веб технологий и фреймворка Джанго. За курс вы изучите массу нового и к концу программы будете уметь работать с языком Питон, создавать на нём полноценные ПК приложения на основе библиотеки Kivy, а также создавать веб сайты на основе библиотеки Джанго.

Больше интересных новостей

5 свежих языков программирования

5 свежих языков программирования

Что такое UX и UI? Описание и обзор отличий

Что такое UX и UI? Описание и обзор отличий

Создание магазина с оплатой на Python / Изучение Flask

Создание магазина с оплатой на Python / Изучение Flask

Лучшие инструменты для веб-разработчиков

Лучшие инструменты для веб-разработчиков

Популярный способ познакомить детей с программированием.

Графический модуль turtle - популярный способ познакомить детей с программированием. Он был частью оригинального языка программирования Logo.

Представьте роботизированную черепаху, начинающуюся с точки (0, 0) в плоскости x/y. После импорта модуля turtle дайте ей команду turtle.forward(15) , и она переместится (на экране!) на 15 пикселей в направлении, в котором смотрит, рисуя линию при движении. Дайте ей команду turtle.right(25) , и она повернется на месте на 25 градусов по часовой стрелке.

Комбинируя вместе эти и подобные команды, можно легко рисовать замысловатые формы и изображения.

Содержание:

Общие сведения и подходы работы с модулем.

Модуль turtle - это расширенная реализация одноименного модуля из стандартного дистрибутива Python до версии Python 2.5.

Он сохраняет достоинства старого модуля turtle и почти на 100% совместим с ним. Это означает, чтобы дать возможность обучающемуся программисту использовать все команды, классы и методы в интерактивном режиме при использовании модуля из IDLE, запущенного с ключом -n .

Модуль turtle предоставляет графические примитивы черепахи как объектно-ориентированным, так и процедурно-ориентированным способами. Так как turtle для базовой графики использует tkinter , то необходима версия Python3, установленная с поддержкой Tk .

Объектно-ориентированный интерфейс использует по существу два + два класса:

Класс TurtleScreen определяет графические окна как площадку для рисования. Его конструктору требуется аргумент tkinter.Canvas или ScrolledCanvas . Его следует использовать, когда черепаха используется как часть какого-либо приложения.

Функция Screen() возвращает одноэлементный объект подкласса TurtleScreen . Эту функцию следует использовать, когда черепаха используется как автономный инструмент для создания графики. Как одноэлементный объект, наследование от его класса невозможно.

Все методы TurtleScreen / Screen также существуют как функции, то есть как часть процедурно-ориентированного интерфейса.

RawTurtle определяет объекты Turtle , которые рисуются на TurtleScreen . Его конструктору требуется аргумент Canvas , ScrolledCanvas или TurtleScreen , чтобы объекты RawTurtle знали, где рисовать.

Производным от RawTurtle является подкласс Turtle , который использует экземпляр Screen , который создается автоматически, если еще не присутствует.

Все методы RawTurtle / Turtle также существуют как функции, то есть как часть процедурно-ориентированного интерфейса.

Процедурный интерфейс предоставляет функции, производные от методов классов Screen и Turtle . Названия у них такие же, как у соответствующих методов. Объект экрана screen всегда создается автоматически, когда вызывается функция, производная от метода Screen . Безымянный объект turtle всегда создается автоматически, когда вызывается какая-либо из функций, производных от метода Turtle .

Чтобы использовать несколько черепах на экране, необходимо использовать объектно-ориентированный интерфейс.

Пример простого рисунка с модулем turtle .

Файл конфигурации модуля turtle .

Встроенная конфигурация по умолчанию имитирует внешний вид и поведение старого модуля turtle , чтобы сохранить максимально возможную совместимость с ним.

Если необходимо использовать другую конфигурацию, которая лучше отражает функции этого модуля или лучше соответствует вашим потребностям, например для использования с классами, то можно подготовить файл конфигурации turtle.cfg , который будет прочитан во время импорта и изменить конфигурацию в соответствии с его настройками.

Встроенная конфигурация будет соответствовать следующему файлу turtle.cfg :

Краткое объяснение записей конфигурации:

  • Первые четыре строки соответствуют аргументам метода Screen.setup() .
  • Строки 5 и 6 соответствуют аргументам метода Screen.screensize() .
  • Форма пера может быть любой из встроенных фигур, например, стрелка, черепаха и т. д. Для получения дополнительной информации попробуйте help(shape) .
  • Если не хотите использовать цвет заливки (т.е. сделать черепаху прозрачной), то необходимо написать fillcolor = '' (при этом, в cfg-файле непустые строки не должны иметь кавычек).
  • Если необходимо отразить состояние модуля turtle , то необходимо использовать resizemode = auto .
  • Записи exampleturtle и examplescreen определяют имена этих объектов в том виде, в котором они встречаются в строках документации. Преобразование строк документации методов в строки документации функций удалит эти имена из строк документации.
  • using_IDLE : Установите значение True , если регулярно работаете с IDLE и его переключателем -n . Это предотвратит переход turtle.exitonclick() в основной цикл.

В каталоге, где хранится модуль, может быть файл turtle.cfg , а в текущем рабочем каталоге может быть еще один файл, созданный пользователем. Последний переопределит настройки первого.

Пакет с примерами turtledemo .

Пакет turtledemo включает набор демонстрационных скриптов. Эти сценарии можно запускать и просматривать с помощью прилагаемой демонстрационной программы следующим образом:

Кроме того, можно запускать демонстрационные скрипты индивидуально. Например,

Каталог пакета turtledemo содержит:

  • Программу-просмотрщик __main__.py , которую можно использовать для просмотра исходного кода скриптов и их одновременного запуска.
  • Несколько скриптов, демонстрирующих различные функции модуля turtle . Доступ к примерам можно получить через меню "Examples". Их также можно запускать автономно.
  • Файл turtle.cfg , который служит примером того, как писать и использовать такие файлы.

ПРИМЕЧАНИЕ: Если запуск в терминале команды python -m turtledemo выдает /usr/bin/python : No module named turtledemo, то необходимо установить файлы примеров установленной версии Python. Например для Linux:

И все заработает.

Установка поддержки Tk для Python3 (Tkinter) в Linux/X11.

В основном дистрибутивы Linux выделяют поддержку Tkinter в отдельный пакет. Это избавляет от установки библиотек Tcl / Tk для людей, которые используют Python, но не используют Tkinter . Проще говоря, необходимо установить пакет с именем python3-tk , который и обеспечит установку и поддержку в системе соответствующих версий библиотек Tcl / Tk .

В данном случае этот пакет предоставляет библиотеки Tcl / Tk для использования с Python3.

MethodParameterDescription
Turtle()NoneCreates and returns a new tutrle object
forward()amountMoves the turtle forward by the specified amount
backward()amountMoves the turtle backward by the specified amount
right()angleTurns the turtle clockwise
left()angleTurns the turtle counter clockwise
penup()NonePicks up the turtle’s Pen
pendown()NonePuts down the turtle’s Pen
up()NonePicks up the turtle’s Pen
down()NonePuts down the turtle’s Pen
color()Color nameChanges the color of the turtle’s pen
fillcolor()Color nameChanges the color of the turtle will use to fill a polygon
heading()NoneReturns the current heading
position()NoneReturns the current position
goto()x, yMove the turtle to position x,y
begin_fill()NoneRemember the starting point for a filled polygon
end_fill()NoneClose the polygon and fill with the current fill color
dot()NoneLeave the dot at the current position
stamp()NoneLeaves an impression of a turtle shape at the current location
shape()shapenameShould be ‘arrow’, ‘classic’, ‘turtle’ or ‘circle’

Черчение с использованием черепахи

  1. Импортировать модуль черепахи
  2. Создать черепаху для контроля.
  3. Рисуйте, используя методы черепахи.
  4. Запустите turtle.done ().

Итак, как указано выше, прежде чем мы сможем использовать черепаху, нам нужно ее импортировать. Мы импортируем ее как:

После импорта библиотеки черепах и предоставления нам всех функциональных возможностей черепах нам необходимо создать новую чертежную доску (окно) и черепаху. Давайте назовем окно wn, а черепаху — skk. Итак, мы кодируем как:

Теперь, когда мы создали окно и черепаху, нам нужно переместить черепаху. Чтобы переместиться на 100 пикселей вперед в направлении skk, мы кодируем:

Мы переместились на 100 пикселей вперед, Круто! Теперь мы завершим программу с помощью функции done (), и все готово!

Итак, мы создали программу, которая рисует линию длиной 100 пикселей. Мы можем рисовать различные формы и заливать разные цвета, используя методы черепахи. Существует множество функций и программ, которые нужно кодировать с помощью библиотеки черепах в python. Давайте научимся рисовать некоторые из основных форм.

Форма 1: Квадрат

Черепашья графика — это один из популярных способов познакомить детей с программированием. Она была частью оригинального языка программирования Logo, разработанного Уолли Фёрзегом и Сеймуром Пейпертом в 1966 году.
Сейчас Черепашка является одним из модулей языка программирования Python и входит в его стандартную поставку. Чтобы начать пользоваться Черепашкой достаточно установить на компьютер интерпретатор языка Python.
Для начала работы с Черепашкой, необходимо импортировать модуль Turtle командой import.

Теперь мы можем использовать команды из этого модуля. Чтобы их использовать надо записать имя объекта, которым мы управляем, поставить точку, а затем указать команду, которую этот объект должен выполнить. У большинства команд есть параметры, указывающие как она должна выполниться, они записываются в скобках. Для примера команда turtle.forward(50) скажет нашей черепашке двигаться вперед на 50 пикселей.
Черепашка всегда появляется в середине холста. Эта точка с координатами x = 0 и y = 0.

Система координат Turtle

Система координат Черепашки

Если Черепашка рисует фигуру, а затем окно закрывается, то стоит добавить в самый конец программы вызов бесконечного цикла mainloop(). Это остановит дальнейшее выполнение программы до тех пор, пока мы вручную не закроем окно с Черепашкой.

import turtle – Подключаем библиотеку
turtle.title (“Название окна”)
t=turtle.Turtle () – Создаем переменную t, через которую будет действовать черепашка
turtle.mainloop () - Данная строка вызывает функцию mainloop. Эта функция вызывает бесконечный цикл окна, поэтому окно будет ждать любого взаимодействия с пользователем, пока не будет закрыто.

forward (n) - Проползти вперед n шагов (пикселей).
backward (n) - Проползти назад n шагов (пикселей).
left (angle) - Повернуться налево на а градусов.
right (angle) - Повернуться направо на a градусов.
circle (r) - Нарисовать окружность радиуса |r|, центр которой находится слева от черепашки, если r>0 и справа, если r 0 и по часовой стрелке, если r Rating:

Читайте также: