如何比较给定日期(字符串)是当前日期还是最后 8 个日期?
how to compare given date (string) is current date to last 8 date or not?
我在一个字符串中有一个日期。我怎样才能算出这个日期 REFRESH = ("2021-11-25 00:27:23") 到最近 8 天的当前日期
from datetime import datetime
from datetime import timedelta
REFRESH = ("2021-11-25 00:27:23")
today = datetime.now()
n_days_ago = today - timedelta(days=7)
print(today, n_days_ago)
我卡在这里了。
我需要数据,例如最近 8 天的当前日期的刷新日期是否为真。
“通过”
您需要将字符串转换为 datetime
对象才能进行比较,有用的函数是 strptime()
,它接受 2 个参数:字符串和字符串的日期格式。
接下来使用 date()
函数只获取没有时间的日期,因为您要比较日期。
示例:
from datetime import datetime, timedelta
REFRESH = "2021-11-24 00:27:23"
today = datetime.today()
n_days_ago = today - timedelta(days=7)
if n_days_ago.date() == datetime.strptime(REFRESH, "%Y-%m-%d %H:%M:%S").date():
print(True)
else:
print(False)
如果您打算打印当前日期和从 REFRESH 过去的天数,我认为这个可以工作
refresh_as_datetime=datetime.strptime(REFRESH,"%Y-%m-%d %H:%M:%S")
delta = datetime.now()-refresh_as_datetime
if (delta.days>=8):
print("not matching") # Refresh date is older than 8 days
else:
print("it's matching") # Refresh date is newer than 8 days
我在一个字符串中有一个日期。我怎样才能算出这个日期 REFRESH = ("2021-11-25 00:27:23") 到最近 8 天的当前日期
from datetime import datetime
from datetime import timedelta
REFRESH = ("2021-11-25 00:27:23")
today = datetime.now()
n_days_ago = today - timedelta(days=7)
print(today, n_days_ago)
我卡在这里了。
我需要数据,例如最近 8 天的当前日期的刷新日期是否为真。 “通过”
您需要将字符串转换为 datetime
对象才能进行比较,有用的函数是 strptime()
,它接受 2 个参数:字符串和字符串的日期格式。
接下来使用 date()
函数只获取没有时间的日期,因为您要比较日期。
示例:
from datetime import datetime, timedelta
REFRESH = "2021-11-24 00:27:23"
today = datetime.today()
n_days_ago = today - timedelta(days=7)
if n_days_ago.date() == datetime.strptime(REFRESH, "%Y-%m-%d %H:%M:%S").date():
print(True)
else:
print(False)
如果您打算打印当前日期和从 REFRESH 过去的天数,我认为这个可以工作
refresh_as_datetime=datetime.strptime(REFRESH,"%Y-%m-%d %H:%M:%S")
delta = datetime.now()-refresh_as_datetime
if (delta.days>=8):
print("not matching") # Refresh date is older than 8 days
else:
print("it's matching") # Refresh date is newer than 8 days