【问题标题】:How do i count with datetime and list it?我如何计算日期时间并列出它?
【发布时间】:2017-08-15 18:39:14
【问题描述】:

我需要帮助来编写代码,每天每 15 分钟计算一次。然后我希望将日期和时间放在一个列表中。代码需要在星期五晚上 7.30 停止计数,然后在星期一上午 00:00 重新开始。

这是目前为止的情况

   import datetime

dt = datetime.datetime(2008, 8, 15, 00, 00, 00, 00)

tdelta = date.timedelta(min=15)



#date2 = date1 + timedelta
#timedelta = date1 + date2


#if day is between monday 00 and friday 19:30:
#lst.append(day)
#day = day + 15

我希望结果是这样的......

星期五 01.05.2016 19:00pm 星期五 01.05.2016 19:15pm 星期五 01.05.2016 周五晚上 19​​:30 2016 年 5 月 1 日晚上 19​​:45 周五 2016 年 5 月 1 日晚上 20:00 周一 04.05.2016 00:00am 星期一 04.05.2016 00:15am 星期一 04.05.2016 00:30am 等等...

我被困在这个问题上,希望你能帮忙

【问题讨论】:

  • 明确您的问题,并向我们展示您到目前为止所做的尝试。

标签: python datetime


【解决方案1】:

你需要这样的东西:

import datetime
dt = datetime.datetime(2008, 8, 15, 00, 00, 00, 00)
tdelta = datetime.timedelta(minutes=15)
result = []
for i in range(20):
    dt += tdelta
    if (dt.isoweekday() < 5) or ((dt.isoweekday() == 5) and (dt.time() < datetime.datetime.strptime('19:30:00', '%H:%M:%S').time())):
        result.append(dt)
print result 

【讨论】:

    【解决方案2】:

    下面的代码给出了 dateFrom 到 DateTo 之间的日期列表,具有特定的分钟范围;

    function (dateFrom, dateTo, minutes){
        let dates = [];
        let tempDate = dateFrom;
        while ( tempDate < dateTo){
           dates.push(tempDate);
           tempDate = tempDate.setMinutes(tempDate.getMinutes() + minutes);
        }
        return dates;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多