如何计算天数,然后计算天数?

时间:2020-04-20 16:11:30

标签: python numeric days

我正在尝试计算可以工作的小时数,如果从今天到8月31日一天要工作四个小时。于是我使用了一个旧文件,并试图对其进行修改(对不起,我觉得这是可行的,但是,我得到几天,然后工作几天,但是我希望工作几个小时。这是代码,尽管它很糟糕:)我意识到我需要做一些完全不同的事情,但是我尝试了一些代码,我写了一些代码来看看生日那天有多少天,并尝试对其进行修改等。 ..您得到图片。是的,我是新手。

import datetime as dt
todays_date = dt.date(2020, 4, 20)
end_of_summer = dt.date(2020, 8, 31)
days_between = todays_date - end_of_summer
print(days_between)
hours_worked = days_between * -4 
print(hours_worked)

输出为: -133天,0:00:00 532天,0:00:00

1 个答案:

答案 0 :(得分:1)

使用timedelta.days

import datetime as dt
start_date = dt.date(2020, 4, 20)
end_date = dt.date(2020, 8, 31)
date_td = end_date - start_date  # you'll get a datetime.timedelta() instance here

days_between = date_td.days
print(days_between, 'days worked')

hours_worked = days_between * 4 
print(hours_worked, 'hours worked')

输出:

133 days worked
532 hours worked

此外,最佳实践是使用开始日期和结束日期来计算时间增量,因此很容易记住如何减去它们而不会得到负值。

来源:https://docs.python.org/2/library/datetime.html#datetime.timedelta