簡體   English   中英

python將時間轉換為utc時間?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM