本文介绍了如何获取当前包含默认时区的等格式日期时间字符串?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要生成一个与iso格式匹配的时间字符串yyyy-mm-ddThh:mm:ss.ssssss-ZO:NE
。now()
和utcnow()
类方法几乎做了我想做的事情。
>>> import datetime
>>> #time adjusted for current timezone
>>> datetime.datetime.now().isoformat()
'2010-08-03T03:00:00.000000'
>>> #unadjusted UTC time
>>> datetime.datetime.utcnow().isoformat()
'2010-08-03T10:00:00.000000'
>>>
>>> #How can I do this?
>>> datetime.datetime.magic()
'2010-08-03T10:00:00.000000-07:00'
推荐答案
在Python3.2+中获取当前时间,单位为UTC:
>>> from datetime import datetime, timezone
>>> datetime.now(timezone.utc).isoformat()
'2015-01-27T05:57:31.399861+00:00'
获取Python3.3+中的本地时间:
>>> from datetime import datetime, timezone
>>> datetime.now(timezone.utc).astimezone().isoformat()
'2015-01-27T06:59:17.125448+01:00'
解释:datetime.now(timezone.utc)
在UTC时间产生一个时区感知datetime
对象。astimezone()
然后将datetime
对象的时区更改为系统的区域设置时区(如果在没有参数的情况下调用)。然后,时区感知datetime
对象会自动生成正确的ISO格式。
这篇关于如何获取当前包含默认时区的等格式日期时间字符串?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!