我可能误解了tzinfo的用途,但我有一个datetime对象dt,我设法将其转换为以下形式:
datetime.datetime(2017, 7, 2, 20, 0, tzinfo=tzoffset('PDT', -7))
我正在尝试表示2017年7月2日20:00 PDT的上述日期。
现在,我想将该时间转换为UTC,但当我这样做时,它会输出July 2nd 2017 20:00 UTC的UTC时间戳,它不会应用7小时的差异。
例如:
>>> dt.timestamp()
1499025607.0即:Sunday, July 2, 2017 8:00:07 PM
也是
>>> dt.isoformat()
'2017-07-02T20:00:00-00:00:07'我试过了
>>> dt.astimezone(pytz.UTC).timestamp()
1499025607.0请注意,这与dt.timestamp()的时间戳相同
发布于 2017-07-04 01:46:48
根据dateutil docs,您对tzoffset()函数的参数是错误的。
tzinfo=dateutil.tz.tzoffset('PDT', -7)创建偏移量为7秒的时区。
tzinfo=dateutil.tz.tzoffset('PDT', -7*60*60)创建偏移量为7小时的时区。
https://stackoverflow.com/questions/44890974
复制相似问题