[英]python convert time to utc time?
我有一个date_object.time()
,它是Asia/Taipei
时间
date_object.time() = '10:00:00'
我得到带有Asia/Taipei
时区的datetime.datetime.now
current = datetime.datetime.now(pytz.utc)
taipeitime = current.replace(tzinfo=pytz.utc).astimezone(pytz.timezone('Asia/Taipei'))
然后我将date_object.time()
和taipeitime
combine = datetime.datetime.combine(taipeitime, date_object.time()) #Asia/Taipei time
而且我必须将combine
转换为UTC时间,但出现错误:
print combine.astimezone(pytz.utc)
ValueError: astimezone() cannot be applied to a naive datetime
请教我如何转换它? 谢谢
日期时间的.time()方法会松散时区信息,请改用.timetz()例如:
>> combine = datetime.datetime.combine(taipeitime, taipeitime.timetz())
>> combine.astimezone(pytz.utc)
datetime.datetime(2014, 11, 16, 15, 13, 46, 948201, tzinfo=<UTC>)
与
>> combine = datetime.datetime.combine(taipeitime, taipeitime.time())
>> combine.astimezone(pytz.utc)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: astimezone() cannot be applied to a naive datetime
参见https://docs.python.org/2/library/datetime.html#datetime.datetime.timetz 。
您也可以将时区替换为时间对象,例如
combine = datetime.datetime.combine(taipeitime,
taipeitime.time().replace(tzinfo=pytz.timezone('Asia/Taipei')))
将为您提供时区感知的合并时间。 参见https://docs.python.org/2/library/datetime.html#datetime.time.replace
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.