Python的UTC时间转换讲解


Posted in Python onFebruary 26, 2019

UTC时间转换,最终得到的都是UTC时间。

简单来说就是:

时间戳(timestamp) 转换-> UTC显示时间(datetime),使用time.gmtime(timestamp)。

显示时间(datetime) 转换-> UTC时间戳(timestamp),使用calendar.timegm(datetime.timetuple())。

注意:

VC下相应的接口是gmtime和_mkgmtime。

代码:

# -*- coding: gb2312 -*-
# UTC时间转换,最终得到的都是UTC时间:
# 时间戳(timestamp)  转换-> UTC显示时间(datetime)
# 显示时间(datetime) 转换-> UTC时间戳(timestamp)
# UTC,协调世界时,又称世界统一时间,可以认为是时区为0的时间。
import time
import datetime
import calendar
aDatetime = datetime.datetime(1970, 1, 1, 0, 0, 1)
aTimestamp = 1
# 获取时区时差
print "time.timezone: " , time.timezone
# 根据自定义时间,获取显示时间(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")
# 根据时间戳(timestamp),获取UTC显示时间(datetime)。即:时间戳(timestamp) 转换-> 显示时间(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))
# 根据显示时间(datetime),获取UTC时间戳(timestamp)。即:显示时间(datetime) 转换-> 时间戳(timestamp)。
print "calendar.timegm: datetime(%s)->timestamp(%s)" % (aDatetime.timetuple(), calendar.timegm(aDatetime.timetuple()))
dt = time.gmtime(aTimestamp - time.timezone) # time.mktime转换时间是带时区的,所以需要减掉时区时差
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)

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
Python中使用语句导入模块或包的机制研究
Mar 30 Python
Windows中使用wxPython和py2exe开发Python的GUI程序的实例教程
Jul 11 Python
Python 中开发pattern的string模板(template) 实例详解
Apr 01 Python
python实时分析日志的一个小脚本分享
May 07 Python
Python3 适合初学者学习的银行账户登录系统实例
Aug 08 Python
Python使用Selenium+BeautifulSoup爬取淘宝搜索页
Feb 24 Python
matplotlib调整子图间距,调整整体空白的方法
Aug 03 Python
在python中pandas的series合并方法
Nov 12 Python
python批量创建指定名称的文件夹
Mar 21 Python
python面向对象实现名片管理系统文件版
Apr 26 Python
tensorflow 分类损失函数使用小记
Feb 18 Python
利用python生成照片墙的示例代码
Apr 09 Python
Python逐行读取文件中内容的简单方法
Feb 26 #Python
Python计算时间间隔(精确到微妙)的代码实例
Feb 26 #Python
python3编写ThinkPHP命令执行Getshell的方法
Feb 26 #Python
初探利用Python进行图文识别(OCR)
Feb 26 #Python
Python编写合并字典并实现敏感目录的小脚本
Feb 26 #Python
Python实现监控Nginx配置文件的不同并发送邮件报警功能示例
Feb 26 #Python
利用python实现对web服务器的目录探测的方法
Feb 26 #Python
You might like
PHP 文件系统详解
2012/09/13 PHP
php使用websocket示例详解
2014/03/12 PHP
php过滤HTML标签、属性等正则表达式汇总
2014/09/22 PHP
PHP中is_file()函数使用指南
2015/05/08 PHP
PHP将Excel导入数据库及数据库数据导出至Excel的方法
2015/06/24 PHP
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
2020/07/21 PHP
wordpress之js库集合研究介绍
2007/08/17 Javascript
运用jquery实现table单双行不同显示并能单行选中
2009/07/25 Javascript
Javascript对象属性方法汇总
2013/11/21 Javascript
利用jQuery设计一个简单的web音乐播放器的实例分享
2016/03/08 Javascript
AngularJS 指令详细介绍
2016/07/27 Javascript
javascript ASCII和Hex互转的实现方法
2016/12/27 Javascript
jQuery实现选中行变色效果(实例讲解)
2017/07/06 jQuery
bootstrap 点击空白处popover弹出框隐藏实例
2018/01/24 Javascript
使用Vue.js开发微信小程序开源框架mpvue解析
2018/03/20 Javascript
如何利用javascript接收json信息并进行处理
2020/08/06 Javascript
vue 使用post/get 下载导出文件操作
2020/08/07 Javascript
Python pass 语句使用示例
2014/03/11 Python
Python变量作用范围实例分析
2015/07/07 Python
Eclipse和PyDev搭建完美Python开发环境教程(Windows篇)
2016/11/16 Python
python使用folium库绘制地图点击框
2018/09/21 Python
对Python 窗体(tkinter)树状数据(Treeview)详解
2018/10/11 Python
Python实现的字典排序操作示例【按键名key与键值value排序】
2018/12/21 Python
python实现身份证实名认证的方法实例
2019/11/08 Python
Python使用Tkinter实现滚动抽奖器效果
2020/01/06 Python
Django数据库操作之save与update的使用
2020/04/01 Python
使用CSS3中的calc()属性来以算式表达尺寸数值
2016/06/06 HTML / CSS
新西兰便宜隐形眼镜购买网站:QUICKLENS New Zealand
2019/03/02 全球购物
医学检验专业个人求职信范文
2013/12/04 职场文书
实习生自我鉴定
2013/12/12 职场文书
母亲节演讲稿范文
2014/01/02 职场文书
语文教学随笔感言
2014/02/18 职场文书
预备党员综合考察材料
2014/05/31 职场文书
增值税发票丢失证明
2015/06/19 职场文书
pytorch 中autograd.grad()函数的用法说明
2021/05/12 Python
Python实现的扫码工具居然这么好用!
2021/06/07 Python