W programowaniu niezwykle ważną częścią jest zarządzanie datami i czasem. Python oferuje bogaty zestaw narzędzi w standardowej bibliotece, które pozwalają na efektywne manipulowanie datami, czasem oraz ich formatami. W tym artykule przyjrzymy się bliżej modułom datetime
, time
oraz calendar
, które są podstawą do pracy z datami i czasem w Pythonie.
Przykład użycia modułu datetime
Moduł datetime
dostarcza klasy do manipulowania datami i czasami. Pozwala na tworzenie obiektów reprezentujących daty, czas, daty i czasu, a także różnice między datami.
from datetime import datetime, timedelta
# Aktualna data i czas
now = datetime.now()
print(f"Aktualna data i czas: {now}")
# Tworzenie określonej daty i czasu
specificDateTime = datetime(2020, 5, 17, 14, 55)
print(f"Określona data i czas: {specificDateTime}")
# Dodawanie dni do aktualnej daty
daysToAdd = timedelta(days=10)
newDate = now + daysToAdd
print(f"Data za 10 dni: {newDate}")
# Różnica między dwoma datami
difference = now - specificDateTime
print(f"Różnica między datami: {difference}")
# Formatowanie daty
formattedDate = now.strftime("%Y-%m-%d %H:%M:%S")
print(f"Zformatowana data: {formattedDate}")
Moduł time
Moduł time
dostarcza funkcje związane z czasem, umożliwiając między innymi odczytanie aktualnego czasu w sekundach od epoki (1 stycznia 1970) oraz przekształcenie go na bardziej zrozumiały format.
import time
# Aktualny czas w sekundach od epoki
currentTime = time.time()
print(f"Aktualny czas (sekundy od epoki): {currentTime}")
# Lokalny czas jako struktura czasu
localTime = time.localtime(currentTime)
print(f"Lokalny czas (struktura): {localTime}")
# Formatowanie czasu
formattedTime = time.strftime("%Y-%m-%d %H:%M:%S", localTime)
print(f"Zformatowany czas: {formattedTime}")
Moduł calendar
Moduł calendar
pozwala na pracę z kalendarzami, w tym na generowanie ich wizualnych reprezentacji. Możemy dzięki niemu otrzymać informacje o miesiącach, tygodniach oraz sprawdzić, czy dany rok jest przestępny.
import calendar
# Wyświetlanie kalendarza na dany miesiąc
year = 2023
month = 5
print(f"Kalendarz na {month}/{year}:")
print(calendar.month(year, month))
# Sprawdzenie, czy rok jest przestępny
isLeap = calendar.isleap(year)
print(f"Czy {year} jest rokiem przestępnym? {isLeap}")
Podsumowanie
Praca z datami i czasem w Pythonie jest niezwykle elastyczna i intuicyjna dzięki modułom datetime
, time
, oraz calendar
. Pozwalają one nie tylko na precyzyjne manipulowanie i formatowanie dat i czasów, ale również na operacje matematyczne na datach oraz generowanie i analizę kalendarzy. Dzięki tym narzędziom Python jest potężnym językiem do obsługi wszelkich zadań związanych z zarządzaniem czasem w aplikacjach.
Jeżeli chcesz przyśpieszyć swoją naukę tworzenia stron chciałbym polecić mój kurs video Python w którym nauczysz się tego języka od podstaw do zaawansowanych jego aspektów.