Python的UTC時間轉(zhuǎn)換講解
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)
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
Python爬蟲之使用MongoDB存儲數(shù)據(jù)的實現(xiàn)
本文主要介紹了Python爬蟲之使用MongoDB存儲數(shù)據(jù)的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
Python中條件語句、循環(huán)語句和pass語句的使用示例
Python條件語句是通過一條或多條語句的執(zhí)行結(jié)果(True或者False)來決定執(zhí)行的代碼塊,下面這篇文章主要給大家介紹了關(guān)于Python中條件語句、循環(huán)語句和pass語句使用的相關(guān)資料,需要的朋友可以參考下2022-06-06
Python零基礎(chǔ)入門學(xué)習(xí)之輸入與輸出
在之前的編程中,我們的信息打印,數(shù)據(jù)的展示都是在控制臺(命令行)直接輸出的,信息都是一次性的沒有辦法復(fù)用和保存以便下次查看,今天我們將學(xué)習(xí)Python的輸入輸出,解決以上問題2019-04-04
Python之Django自動實現(xiàn)html代碼(下拉框,數(shù)據(jù)選擇)
這篇文章主要介紹了Python之Django自動實現(xiàn)html代碼(下拉框,數(shù)據(jù)選擇),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
python實現(xiàn)k均值算法示例(k均值聚類算法)
這篇文章主要介紹了python實現(xiàn)k均值算法示例,簡單實現(xiàn)平面的點K均值分析,使用歐幾里得距離,并用pylab展示,需要的朋友可以參考下2014-03-03
python 如何對Series中的每一個數(shù)據(jù)做運算
這篇文章主要介紹了python 實現(xiàn)對Series中的每一個數(shù)據(jù)做運算操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-05-05
Python實現(xiàn)列表轉(zhuǎn)換成字典數(shù)據(jù)結(jié)構(gòu)的方法
這篇文章主要介紹了Python實現(xiàn)列表轉(zhuǎn)換成字典數(shù)據(jù)結(jié)構(gòu)的方法,結(jié)合實例形式分析了Python數(shù)值類型轉(zhuǎn)換的相關(guān)技巧,需要的朋友可以參考下2016-03-03

