Python:
Jämföra två datum
How to:
Jämför två datum i Python med datetime
-modulen:
from datetime import datetime
# Skapar två datumobjekt
datum1 = datetime(2023, 4, 1)
datum2 = datetime(2023, 5, 1)
# Jämför datum
if datum1 < datum2:
print("datum1 är tidigare än datum2")
else:
print("datum1 är inte tidigare än datum2")
# Resultat
datum1 är tidigare än datum2
Du kan också jämföra exakta tidsstämplar:
# Tidsstämplar
tid1 = datetime(2023, 4, 1, 14, 30)
tid2 = datetime(2023, 4, 1, 18, 45)
# Jämför tidsstämplar
print("tid1 är tidigare än tid2:", tid1 < tid2)
# Resultat
tid1 är tidigare än tid2: True
Deep Dive
För länge sedan använde man strängar eller tidsstämplar (som int
eller float
) för datumjämförelser. Nu har vi datetime
-modulen, som är standard i Python och hanterar datum/tid på ett kraftfullt sätt.
Det finns alternativa metoder, som att använda tredjepartspaket såsom arrow
eller dateutil
. Dessa erbjuder utökad funktionalitet, men datetime
räcker oftast väl.
När du jämför datum handlar det om att konvertera varje datum till ett ordningsbart format inne i datorn, så vi kan använda logiska operatorer som <
, ==
, och >
.
See Also
- Python
datetime
dokumentation: https://docs.python.org/3/library/datetime.html dateutil
dokumentation: https://dateutil.readthedocs.io/en/stable/arrow
-modulen för Python: https://arrow.readthedocs.io/en/latest/