【发布时间】:2020-02-11 22:13:57
【问题描述】:
我正在尝试在 python 中制作某种“截止日期时钟”。 关于时差计算的话题很多,我跟着一些并整理了这种代码:
import datetime
from dateutil.relativedelta import relativedelta
# Get current time:
today = datetime.date.today()
timenow = datetime.datetime.now()
current_time = str(today) + " " + str(timenow.strftime("%H:%M:%S"))
# Set deadline:
deadline = "2019-12-12 15:00:00"
# Calculate difference:
start = datetime.datetime.strptime(current_time,'%Y-%m-%d %H:%M:%S')
ends = datetime.datetime.strptime(deadline, '%Y-%m-%d %H:%M:%S')
diff = relativedelta(ends, start)
print("Now: " + current_time)
print("Deadline: " + deadline)
print(str(diff.days) + " days. "
+ str(diff.hours) + " hours. "
+ str(diff.minutes) + " minutes. "
+ str(diff.seconds) + " seconds. "
)
但问题是,它总是会显示最多一个月的差异......那么问题出在哪里?
【问题讨论】:
-
您没有显示相对增量的月份或年份?您可能会将其与标准库 timedelta 混淆。
标签: python time clock difference