datetime striptime-replace timezone-timestamp 360se c меньше, чем отметка времени - PullRequest
0 голосов
/ 06 марта 2020

Это пример Если вы измените часовой пояс на «Америка / Нью-Йорк», то на 240 se c меньше. Я хочу знать, почему есть разница?

transfromed=datetime.strptime(datetime.now(timezone('Asia/Shanghai')).strftime("%Y-%m-%d %H:%M:%S"),"%Y-%m-%d %H:%M:%S").replace(tzinfo=timezone('Asia/Shanghai')).timestamp()
normal = datetime.now().timestamp()
print(transfromed)
print(normal)
print(normal-transfromed)

распечатка:

1583498126.0
1583498486.620652
360.6206519603729

1 Ответ

0 голосов
/ 06 марта 2020

datetime.now (): возвращает текущую местную дату и время (в соответствии с вашим часовым поясом). Итак, в вашем примере вы сравниваете свой часовой пояс с Америкой или Азией (для Америки разница составит 240, а для Азии - 360 ) Если вы попробуете с другим состоянием, вы получите другое значение ....

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