Сравнивать даты в Python довольно просто. Даты можно легко сравнить с помощью операторов сравнения (например <, >, <, ><=, >=, != и т.д.). Давайте посмотрим, как сравнивать даты с помощью модуля <=, >datetime
с использованием Python.
Код № 1 : Базовый
# Simple Python program to compare dates
# importing datetime module
import datetime
# date in yyyy/mm/dd format
d1 = datetime.datetime(2018, 5, 3)
d2 = datetime.datetime(2018, 6, 1)
# Comparing the dates will return
# either True or False
print("d1 is greater than d2 : ", d1 > d2)
print("d1 is less than d2 : ", d1 < d2)
print("d1 is not equal to d2 : ", d1 != d2)
Выход:
d1 is greater than d2 : False
d1 is less than d2 : True
d1 is not equal to d2 : True
Код № 2 : Сортировка дат
Один из лучших способов сортировки группы дат-сохранить их в списке и применить sort()
метод. Это приведет к сортировке всех дат, доступных в списке. Объекты класса date можно сохранить в списке с помощью append()
метод.
# Python program to sort the dates
# importing datetime module
from datetime import *
# create empty list
group = []
# add today's date
group.append(date.today())
# create some more dates
d = date(2015, 6, 29)
group.append(d)
d = date(2011, 4, 7)
group.append(d)
# add 25 days to the date
# and add to the list
group.append(d + timedelta(days = 25))
# sort the list
group.sort()
# print the dates
for d in group:
print(d)
Выход:
2011-04-07
2011-05-02
2015-06-29
2018-05-24
Код № 3 :Сравнение дат
Сравните два date
объекта класса, точно так же, как сравнение двух чисел.
# importing datetime module
from datetime import *
# Enter birth dates and store
# into date class objects
d1, m1, y1 = [int(x) for x in input("Enter first"
" person's date(DD/MM/YYYY) : ").split('/')]
b1 = date(y1, m1, d1)
# Input for second date
d2, m2, y2 = [int(x) for x in input("Enter second"
" person's date(DD/MM/YYYY) : ").split('/')]
b2 = date(y2, m2, d2)
# Check the dates
if b1 == b2:
print("Both persons are of equal age")
elif b1 > b2:
print("The second person is older")
else:
print("The first person is older")
Выход:
Введите дату от первого лица(ДД/ММ/ГГГГ) : 12/05/2017
Введите дату второго лица(ДД/ММ/ГГГГ) : 10/11/2015
Второй человек старше