Найти тему
programmer's notes (python and more)

Стандартные библиотеки в Python. Библиотека datetime. Приложение 1 к видео 7

Оглавление

Доброго времени суток, читатели, зрители моего канала programmer's notes.

Приложение к видео

Python, основы библиотеки datetime

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

Библиотека datetime состоит из нескольких классов.

Класс date

Класс date предназначен для работы с датами. Вот некоторые компоненты класса

  • today() — получить сегодняшнюю дату (объект класса date);
  • Создать объект класса можно также обычным способом datetime.date(2003, 12, 4), указав год, месяц. день;
  • Изменить параметры объекта можно с использованием метода replace(), укав именованные параметры (см. программу ниже);
  • Компоненты объекта date позволяют получить год, месяц, год отдельно: year, month, day.
  • Даты можно сравнивать использую обычные операторы сравнения, как для чисел.
Текст программы см. ниже
Текст программы см. ниже
primer56.py

Результат выполнения программы

2023-08-06
2023-01-12
12 - 1 - 2023
20 - 4 - 2023
374 days, 0:00:00
374

Замечание
Разность дат даёт объект ИНТЕРВАЛ. Об интервалах см. ниже.

Класс time

Класс time предназначен для управления временем. Вот некоторые компоненты класса.

  • Создать объект time можно указав именованные параметры, см. программу ниже;
  • Получить отдельные компоненты можно с помощью свойств hour, minute, second, microsecond;
  • Для форматного времени используется также метод strftime (см. программу), имеющий целый набор форматов;
  • Для изменения компонентов можно использовать метод replace(), см. программу ниже;
  • Для получения текущего времени можно воспользоваться выражением dt.datetime.now().time();
  • Объекты time можно сравнивать использую обычные операторы сравнения, как для чисел.
Текст программы см. ниже
Текст программы см. ниже
primer57.py

Результат выполнения программы

13:02:11
13 : 2 : 11
13:02:11
13:02:33
17:25:52.156212

Класс datetime

  • Данный класс вбирает в себя возможность и даты и времени. При этом перейти к дате или времени можно используя методы date() и time();
  • Задать компоненты класса можно непосредственно при его создании указав именованные параметры (см. программу ниже);
  • Для замены отдельных компонент как и в предыдущих случаях используется метод replace() с именованными параметрами;
  • Получить текущее дату - время можно, например, с помощью метода today();
  • Разность двух объектов типа datetime даёт объект типа "интервал", о котором мы скажем ниже;
  • Объекты datetime можно сравнивать использую обычные операторы сравнения, как для чисел.
Текст программы см. ниже
Текст программы см. ниже
primer58.py

Результат выполнения программы

2020-12-30 11:09:44
2020 12 30 11
2020-12-30 10:09:55
2023-08-06 17:28:32
949 days, 7:18:37
29
366

Класс timedelta (интервал)

  • Данный класс представляет собой интервал времени. Поэтому, в частности, разность двух объектов типа datetime приводит к появлению объекта timedelta.
  • Интервал может бы создан обычным способом с указанием именованных параметров: days, hours, minutes, seconds, microseconds. Можно также указывать недели (weeks) и миллисекунды (milliseconds). При хранении, однако используются только дни. секунды и микросекунды;
  • Интервалы можно прибавлять или вычитать из объектов datetime (см. текст программы ниже).
  • При сравнении интервалов можно использовать только == или !=.
  • Над интервалами можно производить ряд действий, о которых мы скажем в одном из следующих приложений.
Текст программы см. ниже
Текст программы см. ниже
primer59.py

Результат выполнения программы

2020-12-30 11:09:44
2020-12-28 07:58:00

Следующая статья по теме datetime...

Предыдущий урок по теме datetime...

Хорошего программирования. Оставляйте свои комментарии, не забывайте про лайки и подписывайтесь на мой канал programmer's notes.

Мой кот красив, а красота кода дело десятое
Мой кот красив, а красота кода дело десятое