Оригінальна публікація: Python Datetime.now() – How to Get Today's Date and Time

Щоб отримати дані про час та дату, можна використати модуль datetime на Python.

У цій публікації ви навчитесь використовувати об’єкт datetime з модуля datetime, щоб отримати поточні дату та час.

Ви також дізнаєтесь, як отримати дату та час з різних часових поясів за допомогою функції datetime.now() та модуля pytz.

Як використовувати об’єкт datetime в Python

Щоб скористатись об’єктом datetime, його спочатку потрібно імпортувати. Це виконується ось так:

from datetime import datetime

У наступному прикладі ви побачите, як використовувати об’єкт datetime.

from datetime import datetime

current_dateTime = datetime.now()

print(current_dateTime)
# 2022-09-20 10:27:21.240752

У коді вище ми призначили datetime до змінної під назвою current_dateTime.

На консолі ми отримаємо поточні рік, місяць, день та час: 2022-09-19 17:44:17.858167.

Зверніть увагу, що ми можемо отримати інформацію вище, використавши метод now(): datetime.now().

Як використовувати атрибути datetime.now()

У попередньому розділі ми отримали інформацію про поточні дату та час, куди входили рік, місяць, день та час на той момент.

Але функція datetime.now() надає додаткові атрибути для отриманих даних.

Наприклад, щоб отримати лише рік, ви б зробили щось схоже:

from datetime import datetime

current_dateTime = datetime.now()

print(current_dateTime.year)
# 2022

У прикладі вище ми призначили функцію datetime.now() до змінної під назвою current_dateTime.

За допомогою точкової нотації ми приєднали атрибут year до змінної, оголошеної вище — current_dateTime.year. На консолі ми отримаємо 2022.

Функція datetime.now() має наступні атрибути:

  • year
  • month
  • day
  • hour
  • minute
  • second
  • microsecond

Ось приклад перерахованих вище атрибутів у використанні:

from datetime import datetime

current_dateTime = datetime.now()

print(current_dateTime.year) # 2022

print(current_dateTime.month) # 9

print(current_dateTime.day) # 20

print(current_dateTime.hour) # 11

print(current_dateTime.minute) # 27

print(current_dateTime.second) # 46

print(current_dateTime.microsecond) # 582035

Як отримати конкретний часовий пояс в Python за допомогою datetime.now() та pytz

Щоб отримати інформацію про різні часові пояси в Python, можна використати функцію datetime.now() та модуль pytz.

Ось приклад, як отримати поточні дату та час в м. Лагос, Нігерія:

from datetime import datetime
import pytz

datetime_in_Lagos = datetime.now(pytz.timezone('Africa/Lagos'))

print(datetime_in_Lagos)
# 2022-09-20 12:53:27.225570+01:00

Спочатку ми імпортували модулі:

from datetime import datetime
import pytz

Потім ми передали об’єкт pytz як параметр до функції datetime.now():

datetime_in_Lagos = datetime.now(pytz.timezone('Africa/Lagos'))

Об’єкт pytz має атрибут timezone, який приймає інформацію/параметри конкретного часового поясу: pytz.timezone('Africa/Lagos').

Завдяки атрибуту all_timezones ви можете отримати список всіх можливих часових поясів у бібліотеці pytz, які можна передати як параметри до атрибута timezone, як ми робили в попередньому прикладі. Таким чином:

from datetime import datetime
import pytz

all_timezones = pytz.all_timezones

print(all_timezones)
# [Список всіх часових поясів...]

Висновок

У цій публікації ми поговорили, як отримати сьогоднішню дату та час за допомогою функції datetime.now() в Python.

Ми розглянули декілька прикладів використання функції datetime.now() та її атрибутів.

Зрештою, ми побачили, як отримати дату та час конкретного часового поясу за допомогою функції datetime.now() та модуля pytz.

Щасливого програмування!