Python pytz:显示时区中的实际时间



我正在尝试将日期时间从UTC转换为另一个时区。但是转换后,时间部分不会改变。相反,它将偏移时间与时区相加。

有什么方法可以显示该时区的实际时间吗?

示例代码:

>>> import datetime
>>> import pytz
>>> today=datetime.datetime.now()
>>> today
datetime.datetime(2019, 4, 18, 0, 50, 33, 294610)
>>> today.isoformat()
'2019-04-18T00:50:33.294610'
>>> today2=today.astimezone(pytz.timezone('Asia/Singapore'))
>>> today2
datetime.datetime(2019, 4, 18, 0, 50, 33, 294610, tzinfo=<DstTzInfo 'Asia/Singapore' +08+8:00:00 STD>)
>>> today2.isoformat()
'2019-04-18T00:50:33.294610+08:00'
>>> today2.strftime("%Y-%m-%d %H:%M:%S")
'2019-04-18 00:50:33'
>>>

我希望打印today2变量:2019-04-18T08:50:33.294610

我尝试使用 strftime("%Y-%m-%d %H:%M:%S") 格式化日期,但它仍然向我显示2019-04-18 00:50:33.

请帮忙。谢谢。

这应该可以解决问题,请注意,我设置了删除tzinfo=None +08:00

In [102]: today2.replace(tzinfo=None).isoformat()                                                                                    
Out[102]: '2019-04-18T01:10:32.226014'
In [103]: today2.isoformat()                                                                                                         
Out[103]: '2019-04-18T01:10:32.226014+08:00'

相关内容

  • 没有找到相关文章