Преобразование даты и времени для вычитания - PullRequest
0 голосов
/ 07 апреля 2020

Я думаю, что это простая проблема, но я очень стараюсь ... Мне нужно вычесть два времени. Один наивен, а другой осознает, но я не могу за свою жизнь преобразовать одно в другое.

Как мне преобразовать одно из этих значений времени в другое, чтобы разрешить вычитание?

Пример код ниже:

now_time = str(pd.Timestamp("now"))
current_time = datetime.strptime(now_time, "%Y-%m-%d %H:%M:%S.%f")
x = df.at[0,1]
x = datetime.strptime(x, "%Y-%m-%d %H:%M:%S.%f%z")
print(current_time)
print(x)
print(current_time-x)

возвращает

2020-04-06 19:29:58.239641
2020-04-06 22:50:22.577561+00:00
Traceback (most recent call last):
  File "main.py", line 416, in <module>
    print(current_time-x)
TypeError: can't subtract offset-naive and offset-aware datetimes

1 Ответ

0 голосов
/ 07 апреля 2020

Итак, вам нужно либо сообщить о первом свидании, либо о втором наивном свидании.

current_time = datetime.datetime.now().astimezone()

или

x = datetime.strptime(x, "%Y-%m-%d %H:%M:%S.%f")
...