# Do pracy z datą i czasem używa się dedykownaych klas, które trzeba zaimportować
from datetime import date, datetime

# date - sama data
# datetime - data z czasem

dzisiaj = date.today()
wigilia = date(2023, 12, 24)
wigilia2 = date(year=2023, mont=12, day=24)
teraz = datetime.now()

# wypisanie w domyślnym formacie
print(dzisiaj)
print(wigilia)
print(teraz)

# podejrzeć postać obiektową:
print(repr(teraz))

# odczytać poszczególne pola / atrybuty:
print('sekunda:', teraz.second)
print('dzień miesiąca:', teraz.day)
print('dzień tygodnia:', teraz.weekday()+1)
print()

# za pomocą strftime można uzyskać napis zawierający takie szczególy daty i czasu, jakie chcemy
print(teraz.strftime('%Y-%m-%d %H:%M:%S'))
print(teraz.strftime('%A, %d dzień miesiąca %B w roku %Y, godzina %H minut %M.\nDzisiaj mamy %j dzień roku.'))

# https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes

# Poprzez moduł locale możemy zmienić ustawienia regionalne tego programu
# później znaczniki %A %a %B %b będą korzystać z polskich nazw
import locale
locale.setlocale(locale.LC_TIME, 'pl_PL')
print(teraz.strftime('%A, %d dzień miesiąca %B w roku %Y, godzina %H minut %M.\nDzisiaj mamy %j dzień roku.'))
