Python中實現(xiàn)對Timestamp和Datetime及UTC時間之間的轉(zhuǎn)換
Python項目中很多時候會需要將時間在Datetime格式和TimeStamp格式之間轉(zhuǎn)化,又或者你需要將UTC時間轉(zhuǎn)化為本地時間,本文總結(jié)了這幾個時間之間轉(zhuǎn)化的函數(shù),供大家參考。
一、Datetime轉(zhuǎn)化為TimeStamp
def datetime2timestamp(dt, convert_to_utc=False):
''' Converts a datetime object to UNIX timestamp in milliseconds. '''
if isinstance(dt, datetime.datetime):
if convert_to_utc: # 是否轉(zhuǎn)化為UTC時間
dt = dt + datetime.timedelta(hours=-8) # 中國默認時區(qū)
timestamp = total_seconds(dt - EPOCH)
return long(timestamp)
return dt
二、TimeStamp轉(zhuǎn)化為Datetime
def timestamp2datetime(timestamp, convert_to_local=False):
''' Converts UNIX timestamp to a datetime object. '''
if isinstance(timestamp, (int, long, float)):
dt = datetime.datetime.utcfromtimestamp(timestamp)
if convert_to_local: # 是否轉(zhuǎn)化為本地時間
dt = dt + datetime.timedelta(hours=8) # 中國默認時區(qū)
return dt
return timestamp
三、當(dāng)前UTC時間的TimeStamp
def timestamp_utc_now(): return datetime2timestamp(datetime.datetime.utcnow())
四、當(dāng)前本地時間的TimeStamp
def timestamp_now(): return datetime2timestamp(datetime.datetime.now())
五、UTC時間轉(zhuǎn)化為本地時間
# 需要安裝python-dateutil
# Ubuntu下:sudo apt-get install python-dateutil
# 或者使用PIP:sudo pip install python-dateutil
from dateutil import tz
from dateutil.tz import tzlocal
from datetime import datetime
# get local time zone name
print datetime.now(tzlocal()).tzname()
# UTC Zone
from_zone = tz.gettz('UTC')
# China Zone
to_zone = tz.gettz('CST')
utc = datetime.utcnow()
# Tell the datetime object that it's in UTC time zone
utc = utc.replace(tzinfo=from_zone)
# Convert time zone
local = utc.astimezone(to_zone)
print datetime.strftime(local, "%Y-%m-%d %H:%M:%S")
- python datetime 和時間戳互相轉(zhuǎn)換問題
- Python之time模塊的時間戳,時間字符串格式化與轉(zhuǎn)換方法(13位時間戳)
- python中時間轉(zhuǎn)換datetime和pd.to_datetime詳析
- Python datetime和unix時間戳之間相互轉(zhuǎn)換的講解
- Python中時間datetime的處理與轉(zhuǎn)換用法總結(jié)
- python utc datetime轉(zhuǎn)換為時間戳的方法
- python sys,os,time模塊的使用(包括時間格式的各種轉(zhuǎn)換)
- python 時間的訪問和轉(zhuǎn)換 time示例小結(jié)
相關(guān)文章
詳談Python高階函數(shù)與函數(shù)裝飾器(推薦)
下面小編就為大家?guī)硪黄斦凱ython高階函數(shù)與函數(shù)裝飾器(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09
pandas map(),apply(),applymap()區(qū)別解析
這篇文章主要介紹了pandas map(),apply(),applymap()區(qū)別解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02
Python3控制路由器——使用requests重啟極路由.py
通過本文給大家介紹Python3控制路由器——使用requests重啟極路由.py的相關(guān)知識,代碼寫了相應(yīng)的注釋,以后再寫成可以方便調(diào)用的模塊,感興趣的朋友一起學(xué)習(xí)吧2016-05-05
python分布式系統(tǒng)Celery安裝使用實例講解
這篇文章主要為大家介紹了python分布式系統(tǒng)Celery安裝使用實例講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-12-12

