【问题标题】:how to calculate days, then a certain number of hours in the days?如何计算天数,那么天数是多少小时?
【发布时间】:2020-04-20 16:11:30
【问题描述】:

我正在尝试计算如果我从今天到 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

【问题讨论】:

  • 效果很好,非常感谢。

标签: python numeric days


【解决方案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

【讨论】:

  • @Andrew 很高兴听到。如果它有助于回答您的问题,请随时将您的问题标记为已解决。要了解更多信息,您可以查看:stackoverflow.com/help/someone-answers
猜你喜欢
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-24
相关资源
最近更新 更多