datetime.datetime.strptime(“%d /%m /%Y%H:%M:%S”)。timetuple()。tm_hour

时间:2020-05-25 15:35:20

标签: python datetime

在这里,您可以看到我的代码:

import datetime
DateS = datetime.datetime.strptime('30/03/2019 00:00:00',"%d/%m/%Y %H:%M:%S").timetuple().tm_hour
DateR = datetime.datetime.strptime('15/09/2019 00:00:00',"%d/%m/%Y %H:%M:%S").timetuple().tm_hour
ETP=ET0.copy()
for i in range(8760):
    if i >= (DateS - 1) and i <= (DateR - 1) :
       ETP[i] = ET0[i] * DB2.Kc[0]
    else:
       ETP[i] = ET0[i] * DB2.SolNu[0]

ETP[0] = 0

我想得到: 日期S = 2136(day89 * 24hour = 2135) 日期R = 6192(day258 * 24hour = 6192)

但是我得到: 日期S = 0 日期R = 0

当我使用时:

DateS = datetime.datetime.strptime('30/03/2019-00:00:00','%d/%m/%Y-%H:%M:%S').timetuple().tm_yday
DateR = datetime.datetime.strptime('15/09/2019-23:00:00','%d/%m/%Y-%H:%M:%S').timetuple().tm_yday

我得到: 日期S = 89 日期R = 258

但是我想获取“小时步长时间” ...

我尝试使用strptime和timetupl设置不同的日期时间,但我从未成功。

1 个答案:

答案 0 :(得分:0)

使用tm_yday而不是tm_hour尝试此代码

DateS = datetime.datetime.strptime('30/03/2019-00:00:00','%d/%m/%Y-%H:%M:%S').timetuple().tm_yday * 24
DateR = datetime.datetime.strptime('15/09/2019-23:00:00','%d/%m/%Y-%H:%M:%S').timetuple().tm_yday * 24

,您将获得所需的输出。