溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何在Python中對UTC時間進(jìn)行轉(zhuǎn)換

發(fā)布時間:2021-02-26 15:24:36 來源:億速云 閱讀:1032 作者:戴恩恩 欄目:開發(fā)技術(shù)

本文章向大家介紹如何在Python中對UTC時間進(jìn)行轉(zhuǎn)換,主要包括如何在Python中對UTC時間進(jìn)行轉(zhuǎn)換的使用實(shí)例、應(yīng)用技巧、基本知識點(diǎn)總結(jié)和需要注意事項(xiàng),具有一定的參考價值,需要的朋友可以參考一下。

python是什么意思

Python是一種跨平臺的、具有解釋性、編譯性、互動性和面向?qū)ο蟮哪_本語言,其最初的設(shè)計(jì)是用于編寫自動化腳本,隨著版本的不斷更新和新功能的添加,常用于用于開發(fā)獨(dú)立的項(xiàng)目和大型項(xiàng)目。

UTC時間轉(zhuǎn)換,最終得到的都是UTC時間。

簡單來說就是:

時間戳(timestamp) 轉(zhuǎn)換-> UTC顯示時間(datetime),使用time.gmtime(timestamp)。

顯示時間(datetime) 轉(zhuǎn)換-> UTC時間戳(timestamp),使用calendar.timegm(datetime.timetuple())。

注意:

VC下相應(yīng)的接口是gmtime和_mkgmtime。

代碼:

# -*- coding: gb2312 -*-
# UTC時間轉(zhuǎn)換,最終得到的都是UTC時間:
# 時間戳(timestamp)  轉(zhuǎn)換-> UTC顯示時間(datetime)
# 顯示時間(datetime) 轉(zhuǎn)換-> UTC時間戳(timestamp)
# UTC,協(xié)調(diào)世界時,又稱世界統(tǒng)一時間,可以認(rèn)為是時區(qū)為0的時間。
import time
import datetime
import calendar
aDatetime = datetime.datetime(1970, 1, 1, 0, 0, 1)
aTimestamp = 1
# 獲取時區(qū)時差
print "time.timezone: " , time.timezone
# 根據(jù)自定義時間,獲取顯示時間(datetime)。
print "datetime: ", aDatetime
print "timetuple: ", aDatetime.timetuple()
print "time.strptime: ", time.strptime("1970-1-1 0:1:1", "%Y-%m-%d %H:%M:%S")
# 根據(jù)時間戳(timestamp),獲取UTC顯示時間(datetime)。即:時間戳(timestamp) 轉(zhuǎn)換-> 顯示時間(datetime)。
print "time.gmtime: timestamp(%s)->datetime(%s)" % (aTimestamp, time.gmtime(aTimestamp))
print "datetime.datetime.utcfromtimestamp: timestamp(%s)->datetime(%s)" % (aTimestamp, datetime.datetime.utcfromtimestamp(aTimestamp))
# 根據(jù)顯示時間(datetime),獲取UTC時間戳(timestamp)。即:顯示時間(datetime) 轉(zhuǎn)換-> 時間戳(timestamp)。
print "calendar.timegm: datetime(%s)->timestamp(%s)" % (aDatetime.timetuple(), calendar.timegm(aDatetime.timetuple()))
dt = time.gmtime(aTimestamp - time.timezone) # time.mktime轉(zhuǎn)換時間是帶時區(qū)的,所以需要減掉時區(qū)時差
print "time.mktime: datetime(%s)->timestamp(%s)" % (dt, time.mktime(dt))

輸出:

time.timezone:  -28800
datetime:  1970-01-01 00:00:01
timetuple:  time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=1, tm_wday=3, tm_yday=1, tm_isdst=-1)
time.strptime:  time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=1, tm_sec=1, tm_wday=3, tm_yday=1, tm_isdst=-1)
time.gmtime: timestamp(1)->datetime(time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=1, tm_wday=3, tm_yday=1, tm_isdst=0))
datetime.datetime.utcfromtimestamp: timestamp(1)->datetime(1970-01-01 00:00:01)
calendar.timegm: datetime(time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=1, tm_wday=3, tm_yday=1, tm_isdst=-1))->timestamp(1)
time.mktime: datetime(time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=8, tm_min=0, tm_sec=1, tm_wday=3, tm_yday=1, tm_isdst=0))->timestamp(1.0)

到此這篇關(guān)于如何在Python中對UTC時間進(jìn)行轉(zhuǎn)換的文章就介紹到這了,更多相關(guān)的內(nèi)容請搜索億速云以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持億速云!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI