Python中实现对Timestamp和Datetime及UTC时间之间的转换


Posted in Python onApril 08, 2015

Python项目中很多时候会需要将时间在Datetime格式和TimeStamp格式之间转化,又或者你需要将UTC时间转化为本地时间,本文总结了这几个时间之间转化的函数,供大家参考。

一、Datetime转化为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: # 是否转化为UTC时间
      dt = dt + datetime.timedelta(hours=-8) # 中国默认时区
    timestamp = total_seconds(dt - EPOCH)
    return long(timestamp)
  return dt

二、TimeStamp转化为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: # 是否转化为本地时间
      dt = dt + datetime.timedelta(hours=8) # 中国默认时区
    return dt
  return timestamp

三、当前UTC时间的TimeStamp
 

def timestamp_utc_now():
  return datetime2timestamp(datetime.datetime.utcnow())

四、当前本地时间的TimeStamp
 

def timestamp_now():
  return datetime2timestamp(datetime.datetime.now())

五、UTC时间转化为本地时间
 

# 需要安装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 相关文章推荐
简单说明Python中的装饰器的用法
Apr 24 Python
Python易忽视知识点小结
May 25 Python
python实现支持目录FTP上传下载文件的方法
Jun 03 Python
python中如何使用正则表达式的集合字符示例
Oct 09 Python
TensorFlow实现AutoEncoder自编码器
Mar 09 Python
详解Python 多线程 Timer定时器/延迟执行、Event事件
Jun 27 Python
Django中在xadmin中集成DjangoUeditor过程详解
Jul 24 Python
使用Django搭建web服务器的例子(最最正确的方式)
Aug 29 Python
Python环境下安装PyGame和PyOpenGL的方法
Mar 25 Python
scrapy框架携带cookie访问淘宝购物车功能的实现代码
Jul 07 Python
python实现PolynomialFeatures多项式的方法
Jan 06 Python
Pytorch - TORCH.NN.INIT 参数初始化的操作
Feb 27 Python
python模块之StringIO使用示例
Apr 08 #Python
Python StringIO模块实现在内存缓冲区中读写数据
Apr 08 #Python
Python实现的简单文件传输服务器和客户端
Apr 08 #Python
操作Windows注册表的简单的Python程序制作教程
Apr 07 #Python
编写简单的Python程序来判断文本的语种
Apr 07 #Python
Python实现在线程里运行scrapy的方法
Apr 07 #Python
Python实现从脚本里运行scrapy的方法
Apr 07 #Python
You might like
php curl 登录163邮箱并抓取邮箱好友列表的代码(经测试)
2011/04/07 PHP
php中使用explode查找某个字符是否存在的方法
2011/07/12 PHP
php递归json类实例
2014/12/02 PHP
PHP去掉json字符串中的反斜杠\及去掉双引号前的反斜杠
2015/09/30 PHP
在IE,Firefox,Safari,Chrome,Opera浏览器上调试javascript
2008/12/02 Javascript
javascript 学习笔记(一)DOM基本操作
2011/04/08 Javascript
关于JS判断图片是否加载完成且获取图片宽度的方法
2013/04/09 Javascript
jQuery function的正确书写方法
2013/08/02 Javascript
js模仿java的Map集合详解
2016/01/06 Javascript
jQuery formValidator表单验证
2016/01/07 Javascript
js获取当前年月日-YYYYmmDD格式的实现代码
2016/06/01 Javascript
浅谈js对象属性 通过点(.) 和方括号([]) 的不同之处
2016/10/29 Javascript
基于jQuery实现Accordion手风琴自定义插件
2020/10/13 Javascript
vue.js+Element实现表格里的增删改查
2017/01/18 Javascript
ajax接收后台数据在html页面显示
2017/02/19 Javascript
js 获取元素的具体样式信息getcss(实例讲解)
2017/07/05 Javascript
JavaScript实现简单动态进度条效果
2018/04/06 Javascript
微信小程序位置授权处理方法
2019/06/13 Javascript
详解javascript void(0)
2020/07/13 Javascript
js实现手表表盘时钟与圆周运动
2020/09/18 Javascript
python实现用户登录系统
2016/05/21 Python
Python之自动获取公网IP的实例讲解
2017/10/01 Python
python opencv设置摄像头分辨率以及各个参数的方法
2018/04/02 Python
Python中的Numpy矩阵操作
2018/08/12 Python
python 实现读取一个excel多个sheet表并合并的方法
2019/02/12 Python
pandas DataFrame创建方法的方式
2019/08/02 Python
浅谈tensorflow中Dataset图片的批量读取及维度的操作详解
2020/01/20 Python
python数据分析:关键字提取方式
2020/02/24 Python
Daisy London官网:英国最大的首饰集团IBB旗下
2019/02/28 全球购物
屈臣氏俄罗斯在线商店:Watsons俄罗斯
2020/08/03 全球购物
上课玩手机检讨书
2014/02/08 职场文书
测绘专业大学生职业生涯规划书
2014/02/10 职场文书
2014乡镇干部纪律作风整顿思想汇报
2014/09/13 职场文书
求职意向书范本
2015/05/11 职场文书
完美解决golang go get私有仓库的问题
2021/05/05 Golang
MySQL中JOIN连接的基本用法实例
2022/06/05 MySQL