Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Python

Python's datetime Module Onder de Loep: Datums, Tijden, Timedelta & Strftime Uitgelegd

Python's datetime bibliotheek biedt een robuuste set tools voor het manipuleren van datums, tijden en tijdsintervallen. Door te werken met objecten in plaats van raw strings of timestamps, kunnen ontwikkelaars nauwkeurige berekeningen en formattering met vertrouwen uitvoeren.

Belangrijkste datetime Klassen

  • date – Behandelt jaar, maand en dag.
  • time – Behandelt uur, minuut, seconde en microseconde, onafhankelijk van een specifieke datum.
  • datetime – Combineert een datum en een tijd in een enkel object.
  • timedelta – Vertegenwoordigt een duur, wat optellen of aftrekken van datums en tijden mogelijk maakt.
  • tzinfo – Abstracte basisklasse voor tijdzone-ondersteuning.

Aan de Slag: Importeren en Instantiëren

Voordat je enige manipulatie doet, importeer de benodigde klassen:

from datetime import date, time, datetime, timedelta

Instantieer een date object:

vandaag = date.today()
print(vandaag)  # bijv., 2024-04-19

Huidige Datum en Tijd

De datetime.now() methode retourneert de huidige lokale datum en tijd:

nu = datetime.now()
print(nu)  # 2024-04-19 14:35:12.123456

Om alleen het tijd-component te extraheren:

huidige_tijd = nu.time()
print(huidige_tijd)  # 14:35:12.123456

Output Formatteren met strftime

De strftime methode converteert datetime objecten naar menselijk-leesbare strings met formaatcodes:

nu.strftime("%Y-%m-%d %H:%M:%S")  # "2024-04-19 14:35:12"

Veelvoorkomende directives zijn:

  • %Y – Viercijferig jaar.
  • %y – Tweecijferig jaar.
  • %a – Afgekorte dagnaam.
  • %A – Volledige dagnaam.
  • %b – Afgekorte maandnaam.
  • %B – Volledige maandnaam.
  • %d – Dag van de maand (01-31).
  • %H – Uur (00-23).
  • %I – Uur (01-12).
  • %M – Minuut (00-59).
  • %S – Seconde (00-59).
  • %p – AM of PM.

Voorbeelden:

# 12-uurs formaat met AM/PM
print(nu.strftime("%I:%M:%S %p"))
# 24-uurs formaat
print(nu.strftime("%H:%M"))

Werken met timedelta

Een timedelta vertegenwoordigt een tijdspanne. Het ondersteunt rekenkunde met datums en datetimes:

# Maak een timedelta van 365 dagen
een_jaar = timedelta(days=365)
# Een jaar vanaf vandaag
toekomstige_datum = datetime.now() + een_jaar
print(toekomstige_datum)

Dagen berekenen tot een evenement (bijv. Nieuwjaar):

vandaag = date.today()
nieuwjaar = date(vandaag.year, 1, 1)
if nieuwjaar < vandaag:
    nieuwjaar = date(vandaag.year + 1, 1, 1)
print("Nieuwjaar is over", (nieuwjaar - vandaag).days, "dagen")
else:
    print("Nieuwjaar is over", (nieuwjaar - vandaag).days, "dagen")

Alles Samenvoegen

Hieronder is een beknopt, klaar-om-te-draaien script dat de kernfeatures demonstreert:

from datetime import datetime, date, timedelta
# Huidige datum en tijd
nu = datetime.now()
print("Nu:", nu)
# Formaat-voorbeelden
print("ISO-formaat:", nu.strftime("%Y-%m-%d %H:%M:%S"))
print("12-uurs tijd:", nu.strftime("%I:%M:%S %p"))
# Timedelta-operaties
een_week = timedelta(weeks=1)
print("Eén week vanaf nu:", nu + een_week)
# Dagen tot Nieuwjaar
vandaag = date.today()
nieuwjaar = date(vandaag.year + (vandaag < date(vandaag.year, 1, 1)), 1, 1)
print("Dagen tot Nieuwjaar:", (nieuwjaar - vandaag).days)

Samenvatting

Python's datetime module voorziet ontwikkelaars van krachtige, type-veilige tools voor datum- en tijdmanipulatie:

  • Gebruik date, time en datetime objecten voor duidelijke, expliciete representaties.
  • Benut strftime voor flexibele, locale-aware formattering.
  • Gebruik timedelta om rekenkunde uit te voeren en intervallen te berekenen.
  • Onthoud de relevante klassen te importeren voor gebruik; anders zal de interpreter fouten geven.

Deze tools zijn essentieel voor taken variërend van simpele timestamping tot complexe scheduling-logica.

Python

  1. Python datetime beheersen: praktische gids voor datums, tijden en tijdzones
  2. Huidige datum en tijd ophalen in Python: een praktische gids
  3. Python: Huidige tijd en tijdzonedata eenvoudig ophalen
  4. Python's time-module beheersen: functies, structs en praktische voorbeelden
  5. Python's time.sleep() onder de knie krijgen: best practices, multithreading en real-world voorbeelden
  6. Python print()-functie: Praktische handleiding met voorbeelden
  7. Python's str.count() beheersen: Karakters & substrings tellen met voorbeelden
  8. Python `format()` strings beheersen met duidelijke voorbeelden
  9. Python's String.find()-methode beheersen: Syntaxis, voorbeelden & alternatieven
  10. Python lambda-functies beheersen: praktische voorbeelden & best practices
  11. Python round()-functie uitgelegd met praktische voorbeelden