datetime.datetime.strptime ("% d /% m /% Y% H:% M:% S"). timetuple (). tm_hour - PullRequest
0 голосов
/ 25 мая 2020

Здесь вы можете увидеть мой код:

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 (день89 * 24 часа = 2135) Дата R = 6192 (день 258 * 24 часа = 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

Но я хотел бы получить «время шага в часах» ...

Я пробую другое datetime с strptime и timetupl, но мне это не удается.

1 Ответ

0 голосов
/ 25 мая 2020

попробуйте этот код с 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

, и вы получите результат, который запрашиваете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...