Как вывести текущее время в python
Перейти к содержимому

Как вывести текущее время в python

Работа с датами и временем

Основной функционал для работы с датами и временем сосредоточен в модуле datetime в виде следующих классов:

Класс date

Для работы с датами воспользуемся классом date , который определен в модуле datetime. Для создания объекта date мы можем использовать конструктор date, который последовательно принимает три параметра: год, месяц и день.

Например, создадим какую-либо дату:

Если необходимо получить текущую дату, то можно воспользоваться методом today() :

С помощью свойств day, month, year можно получить соответственно день, месяц и год

Класс time

За работу с временем отвечает класс time . Используя его конструктор, можно создать объект времени:

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

Класс datetime

Класс datetime из одноименного модуля объединяет возможности работы с датой и временем. Для создания объекта datetime можно использовать следующий конструктор:

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

Для получения текущих даты и времени можно вызвать метод now() :

С помощью свойств day, month, year, hour, minute, second можно получить отдельные значения даты и времени. А через методы date() и time() можно получить отдельно дату и время соответственно.

Преобразование из строки в дату

Из функциональности класса datetime следует отметить метод strptime() , который позволяет распарсить строку и преобразовать ее в дату. Этот метод принимает два параметра:

Первый параметр str представляет строковое определение даты и времени, а второй параметр — формат, который определяет, как различные части даты и времени расположены в этой строке.

Работа с датой и временем: модуль datetime

В этой статье мы разберемся, как работать с датой и временем в Python при помощи модуля datetime. И для начала давайте напишем несколько простых программ, связанных с датой и временем.

Пример 1: Получение текущей даты и времени.

Когда вы запустите программу, результат будет примерно таким:

В этом примере мы импортировали модуль datetime с помощью оператора import datetime .

Одним из классов, определенных в модуле datetime, является класс datetime . После импортирования модуля мы использовали метод now() для создания объекта datetime , содержащего текущие локальные дату и время.

Пример 2: Получение текущей даты.

Когда вы запустите программу, результат будет примерно таким:

В этой программе мы использовали метод today() , определенный в классе date , чтобы получить объект date , содержащий текущую локальную дату.

Что находится внутри datetime?

Мы можем использовать функцию dir() для получения списка, содержащего все атрибуты модуля datetime.

Когда вы запустите программу, вывод будет следующим:

[‘MAXYEAR’, ‘MINYEAR’, ‘__builtins__’, ‘__cached__’, ‘__doc__’, ‘__file__’, ‘__loader__’, ‘__name__’, ‘__package__’, ‘__spec__’, ‘date’, ‘datetime’, ‘datetime_CAPI’, ‘sys’, ‘time’, ‘timedelta’, ‘timezone’, ‘tzinfo’]

Наиболее часто используемыми классами в модуле datetime являются:

  • date
  • time
  • datetime
  • timedelta

Класс datetime.date

Объект date представляет дату (год, месяц и день).

Пример 3: объект date для представления даты.

Когда вы запустите программу, вывод будет следующим:

В приведенном выше примере date() является конструктором класса date . Конструктор принимает три аргумента: год, месяц и день.

Переменная d — это объект date .

Вы можете создавать объекты класса date , предварительно импортировав модуль datetime, а можете импортировать только класс date из модуля datetime. Вот как это делается:

Пример 4: Получение текущей даты.

Для получения информации о текущей дате можно воспользоваться методом today() .

Когда вы запустите программу, результат будет примерно таким:

Current year: 2020

Current month: 6

Класс datetime.time

Экземпляр класса time представляет собой время (часы, минуты, секунды и микросекунды).

Пример 7: объект time для представления времени.

Когда вы запустите программу, вывод будет следующим:

Первые три аргумента year , month и day в конструкторе datetime() являются обязательными. Отсутствующие данные будут заполнены нулями по умолчанию.

Пример 10: вывод года, месяца, часа, минуты и метки времени.

Когда вы запустите программу, результат будет примерно таким:

Класс datetime.timedelta

Объект timedelta представляет разницу между двумя моментами времени.

Пример 12: разница между двумя моментами времени.

Когда вы запустите программу, результат будет примерно таким:

s1: 06/29/2020, 20:43:57

s2: 29/06/2020, 20:43:57

Здесь %Y , %m , %d , %H и т. д. — коды для определения формата. Метод strftime() принимает один или несколько кодов и возвращает отформатированную строку на его основе.

В приведенной выше программе переменные t , s1 и s2 являются строками.

Основные коды для определения формата:

  • %Y — год [0001, …, 2018, 2019, …, 9999]
  • %m — месяц [01, 02, …, 11, 12]
  • %d — день [01, 02, …, 30, 31]
  • %H — час [00, 01, …, 22, 23]
  • %M — минута [00, 01, …, 58, 59]
  • %S — секунда [00, 01, …, 58, 59]

Чтобы узнать больше о методе strftime() и кодах форматирования, перейдите по ссылке.

Python strptime()- преобразование строки в объект datetime

Метод strptime() создает объект datetime из заданной строки (представляющей дату и время).

Пример 17: метод strptime().

Когда вы запустите программу, результат будет примерно таким:

Local: 06/29/2020, 00:16:45

NY: 06/28/2020, 17:17:00

London: 06/28/2020, 22:17:00

Здесь datetime_NY и datetime_London — это объекты datetime , содержащие текущую дату и время соответствующего часового пояса.

python books logo

Английский для программистов

Наш телеграм канал с тестами по английскому языку для программистов. Английский это часть карьеры программиста. Поэтому полезно заняться им уже сейчас

Работа с датой и временем в Python

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

Модуль datetime

Мы изучим следующие классы модуля:

  • datetime.date
  • datetime.timedelta
  • datetime.datetime

Благодаря этим классам мы в будущем сможем работать с большей частью случаев, в которых нам понадобятся объекты date и datetime. Также существует класс tzinfo, который применяется для работы с часовыми поясами. Для дополнительной информации об этом классе вы можете обратиться к документации Python.

datetime.date

Python может представлять даты различными способами. Для начала, рассмотрим формат datetime.date, так как это один из самых простых объектов date.

В данном коде показано, как создать простой объект даты. Класс date принимает три аргумента: год, месяц и день. Если вы укажите неправильное значение, вы увидите ошибку ValueError, как в случае выше. В противном случае вы увидите, что объект datetime.date вернулся. Давайте взглянем на еще один пример:

Здесь мы присваиваем объекту date переменную d. Теперь мы можем получить доступ к различным компонентам даты по названиям, таким как d.year или d.month. Давайте посмотрим, какой сейчас день:

Это может быть полезно, когда вам нужно записать, какой сейчас день. Или, если вам нужно выполнить основанный на сегодняшней дате расчет. Мелочь, а приятно.

datetime.datetime

Объект datetime.datetime содержит всю информацию объектов datetime.date плюс datetime.time. Давайте приведем несколько примеров, для лучшего понимания разницы между этим объектом, и объектом datetime.date.

Мы видим, что datetime.datetime принимает несколько дополнительных аргументов: год, месяц, день, час, минута и секунда. Это также позволяет вам указывать информацию о микросекундах и часовом поясе. При работе с базами данных, данные типы объектов будут использоваться достаточно часто. Большую часть вашей работы, вам нужно будет конвертировать форматы date или datetime Python в форматы SQL datetime или timestamp. Обратите внимание на то, что today совместно с datetime.datetime использует два разных метода:

Модуль datetime содержит другой метод, под названием strftime. Этот метод позволяет разработчику создавать строку, отображающую время в более понятной для человека форме. Существует целая таблица параметров форматирования, с которой рекомендуется ознакомиться в документации Python, в секции 8.1.7. Давайте взглянем на несколько примеров, показывающих всю полезность данного метода:

Первый пример – это скорее хитрость. В нем показано, как конвертировать сегодняшний объект datetime в строку, следующую за форматом YYYYMMDD (ГГГГММДД). Второй пример более наглядный.

Есть вопросы по Python?

На нашем форуме вы можете задать любой вопрос и получить ответ от всего нашего сообщества!

Telegram Чат & Канал

Вступите в наш дружный чат по Python и начните общение с единомышленниками! Станьте частью большого сообщества!

Паблик VK

Одно из самых больших сообществ по Python в социальной сети ВК. Видео уроки и книги для вас!

В нем мы присваиваем объект datetime переменной под названием today и применяем два разных параметра форматирования строки. Первый параметр добавляет косые черточки между элементами datetime, а также перегруппировывает datetime, теперь он делится на месяц, день и год. В последнем примере мы создаем временную отметку, которая следует типичному формату: YYYY-MM-DD.HH.MM.SS. Если вам нужно указать год как двухзначный (“YY”), вы можете заменить %Y на %y.

datetime.timedelta

Объект datetime.timedelta отображает длительность времени. Другими словами, это разница между двумя датами или временными отметками. Давайте взглянем на наглядный пример:

Мы создали два объекта datetime. Один указывает на сегодняшний день, второй – на прошедшую неделю. После этого, мы берем разницу между ними. Это возвращает объект timedelta, который мы можем далее использовать, чтобы выяснить, сколько прошло дней или секунд, между этими двумя датами. Если вам нужно узнать количество часов или минут между двумя датами, вам понадобится немножко математики, чтобы выяснить это. Давайте взглянем на проверенный способ:

Отсюда мы узнаем, что в неделе 186 часов и 13 минут. Обратите внимание на то, что мы используем двойную косую черту в качестве нашего оператора деления, также известного как floor division. Теперь мы готовы к тому, чтобы узнать больше о модуле time Python.

Модуль time

Модуль time открывает разработчику Python доступ к нескольким связанным со временем функциям. Модуль основан на «эпохе», точке, с которой начинается время. Для систем Unix, эпоха началась в 1970 году. Чтобы узнать, какая эпоха в вашей системе, попробуйте запустить следующий код:

Я запустил его на Windows 7, которая также уверена в том, что начало времен датируется 1970м годом. В любом случае, в данном разделе мы ознакомимся со следующими функциями:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *