МУНИЦИПАЛЬНОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ДОПОЛНИТЕЛЬНОГО ОБРАЗОВАНИЯ
«ЦЕНТР ДЕТСКОГО ТЕХНИЧЕСКОГО ТВОРЧЕСТВА»
Методическая разработка
«Модуль datatime на языке
программирования Python»
к дополнительной общеобразовательной
общеразвивающей программе
технической направленности
«Программирование на Python»
Возраст детей: 10-17 лет
Автор: Костычев Вадим Александрович
г. Заречный Пензенской области
2023 г.
В ходе изучения программирования на основе языка Python большую роль играет разработка проектов. Они позволяют отработать как навыки программирования, вспомнить работу различных функций, команд, развить навыки построения алгоритмов.
Целью данной разработки является повышение интереса учащихся к техническому творчеству посредством работы над проектом на языке Python.
Данная методическая разработка используется как обучающий пример для работы по дополнительной общеобразовательной общеразвивающей программе технической направленности «Программирование на Python». С их помощью учащиеся смогут применить теоретические знания на практике, построив сложные алгоритмы для решения различных задач.
Модуль datetime в языке программирования Python предоставляет удобные инструменты для работы с датами и временем. В этом методическом материале мы рассмотрим основные типы данных, подключение библиотеки и некоторые функции, предоставляемые модулем datetime.
Типы данных date и time:
1. Тип данных date представляет собой дату и содержит информацию о годе, месяце и дне. Возможные значения для года варьируются от 1 до 9999, для месяца – от 1 до 12, а для дня – от 1 до 31.
2. Тип данных time представляет собой время и содержит информацию о часах, минутах, секундах и микросекундах. Возможные значения для часов, минут, секунд и микросекунд варьируются от 0 до 23, 0 до 59, 0 до 59 и 0 до 999999 соответственно.
Подключение библиотеки:
Для использования модуля datetime в программе необходимо импортировать его. Для этого используется следующая команда:
import datetime
Примеры работы:
1. Создание экземпляра класса date:
import datetime
today = datetime.date.today()
print(today) # Выводит текущую дату в формате ГГГГ-ММ-ДД
2. Создание экземпляра класса time:
import datetime
current_time = datetime.time(23, 59, 59)
print(current_time) # Выводит время в формате ЧЧ:ММ:СС
3. Получение текущей даты и времени:
import datetime
now = datetime.datetime.now()
print(now) # Выводит текущую дату и время в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС.ММММММ
Работа функций str() и repr() для модуля datetime:
Функция str() преобразует объект в строку, в удобном для чтения формате. Например:
import datetime
today = datetime.date.today()
print(str(today)) # Выводит текущую дату в формате ГГГГ-ММ-ДД в виде строки
Функция repr() возвращает строку, которая может быть использована для создания точной копии объекта. Например:
import datetime
today = datetime.date.today()
print(repr(today)) # Выводит строку 'datetime.date(ГГГГ, ММ, ДД)', представляющую объект даты
Это лишь базовое введение в работу с модулем datetime. В нем также имеется множество других функций и методов, которые могут быть полезными при работе с датами и временем.
Задача 1. Вычисление продолжительности события
Вычислите продолжительность события, если оно начнется 1 июля 2021 года в 10 утра и закончится 2 июля 2021 года в 15:30.
Выходные данные:
Продолжительность события: 1 day, 5:30:00
Листинг программы:
import datetime
def calculate_event_duration(start_datetime, end_datetime):
event_duration = end_datetime - start_datetime
return event_duration
start_datetime = datetime.datetime(2021, 7, 1, 10, 0, 0)
end_datetime = datetime.datetime(2021, 7, 2, 15, 30, 0)
event_duration = calculate_event_duration(start_datetime, end_datetime)
print("Продолжительность события:", event_duration)
Задача 2. День зарплаты
Выведите на экран день недели, когда работник получит зарплату, если человек получит зарплату 30 ноября 2023 года
Выходные данные:
День недели: Thursday
Листинг программы:
import datetime
date = datetime.date(2023, 11, 30)
weekday = date.strftime("%A")
print("День недели:", weekday)
Задача 3. Текущее время и дата
Напишите программу, которая выведет на экран текущую время и дату.
Выходные данные:
Текущая дата: 2023-12-07
Текущее время: 20:56:16.942183
Листинг программы:
import datetime
current_date = datetime.date.today()
current_time = datetime.datetime.now().time()
print("Текущая дата:", current_date)
print("Текущее время:", current_time)
Задача 4. Форматирование дат
Отформатируйте дату 01.01.2022 по примеру: дд/мм/гггг
Выходные данные:
01/01/2022
Листинг программы:
import datetime
date = datetime.date(2022, 1, 1)
formatted_date = date.strftime("%d/%m/%Y")
print(formatted_date)
Задача 5. Добавьте к дате
Напишите программу, которая будет добавлять к текущей дате 30 дней.
Выходные данные:
2024-01-06
Листинг программы:
import datetime
date = datetime.date.today()
delta = datetime.timedelta(days=30)
new_date = date + delta
print(new_date)