Онлайн курс обучения python для начинающих, Изучайте Питон с Нуля по нашим урокам

Примеры задач курса

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

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

Пример №1

Напишите программу, рисующую часы со стрелками. Часы должны показывать текущее время. Выглядеть это все должно примерно так:

Основой этой программы будет бесконечный цикл, в каждой итерации которого надо нарисовать последовательно следующие элементы часов:

  • Границу часов — круг с радиусом 170 пикселей и центром в точке (175, 175)

  • 12 длинных засечек для часов и 60 коротких для минут. Для этого нужно нарисовать 12 линий длиной 170 пикселей с помощью canvas.radius_line (описание этой функции смотрите в справочнике) и 60 линий длиной 155 пикселей. После нужно нарисовать закрашенный круг белого цвета с центром в точке (175, 175) и радиусом 150

  • Часовую стрелку длинной 100 пикселей и толщиной 6 пикселей. Толщину линий можно изменить с помощью canvas.line_width(6)

  • Минутную стрелку длинной 130 и толщиной 2 пикселя

  • Секундную стрелку длинной 160 и толщиной 1 пиксель

  • Закрашенный кружочек с радиусом 7 и центром в точке (175, 175)

В отличии от предыдущего урока, в этом как раз и нужно использовать свойства даты/времени для получения текущего часа, минуты и секунды:

import datetime

dt = datetime.datetime.now()
dt.hour  # Час
dt.minute  # Минута
dt.second  # Секунда

Для прохождения этого урока необязательно использовать разные цвета для разных элементов часов, как в примере. Робот засчитает решение и без этого. Главное, чтобы все остальное было в порядке.

Пример №2

Напишите программу, которая будет делать анимацию кругов в случайных координатах. Цвета могут не совпадать, но в целом должно быть похоже на это:

Сначала в программе нужно объявить кортеж colors из названий семи цветов. Каждый цвет — это строка. Цвета можно выбрать из списка на этой странице Википедии. Неважно, 'Pink' это или 'Lime' — главное, чтобы цвета существовали и были разные.

Потом в программе должен начаться бесконечный цикл, в каждой итерации которого должна быть анимация появления семи концентрических кругов с цветами из кортежа colors и радиусами от 150 до 185 пикселей с шагом 5. Для рисования семи кругов каждой итерации используйте цикла for, а для получения индекса цвета — функцию enumerate. При рисовании каждого из кругов делайте паузу в пять сотых секунды.

Перед циклом for нужно получить случайные координаты центра кругов. Сделать это нужно с помощью модуля random, который отвечает в Питоне за случайность. Обе координаты можно получить с помощью одинаковой функции randint — она вернет случайное число от 0 до 350.

random.randint(0, 350)

Не забудьте импортировать модули random, canvas и time в начале программы.