Python中实现对Timestamp和Datetime及UTC时间之间的转换
作者:goldensun 发布时间:2023-06-25 07:58:25
标签:Python,时间
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")


猜你喜欢
- 正则表达式中的符号符号描述re1 | re2匹配正则表达式 re1 或者 re2 ;re1 与 re2 代表两个匹配的字符串信息^匹配字符串
- 在pandas中创建category类型数据的几种方法之详细攻略 T1、直接创建 category类型数据可知,在category
- 群里有人提出这么一个需求:每天都会传过来一份 Word 文档,里面有多个 Excel 附件,需要把 Excel 内容读取出来。第一反应是使用
- 这个语法是用来代替传统的try...finally语法的。 with EXPRESSION [ as VARIABLE] WITH-BLOC
- 用for循环和海龟绘图实现漂亮的螺旋线A.课程内容本节课通过绘制复杂的螺旋线来深入学习for循环和range()函数的用法。深入了解循环的程
- 咱们Python 集中营有一个专题就是分享一些有意思的东西,今天大概看了一下pygame的这个非标准库就想着使用它来做个小游戏-拼图。通过加
- 最近没有项目做,闲来无事写了一个小demo,特此分享到脚本之家平台,供大家参考下,本文写的不好还请各位大侠见谅!功能及方法逻辑都注释在代码中
- 注意:自定义函数要放在项目应用目录/common/common.php中。 这里是关键。 模板变量的函数调用格式:{$varname|fun
- python中的turtle库是3.6版本中新推出的绘图工具库,那么如何使用呢?下面小编给大家分享一下。首先打开pycharm软件,右键单击
- 本文实例讲述了Python设计模式之代理模式。分享给大家供大家参考,具体如下:代理模式(Proxy Pattern):为其他对象提供一种代理
- 不过先前的 调用方法着实有些繁琐,先实例化->添加参数、变量->写入,搞的跟把大象装冰箱里头一样麻烦。好在作者终于注意到这一点,
- 1. 前言对于列表类型的大量数据,前端展示往往采用 分页 和 无限滚动 的方式来展示,对于用户来说,鼠标滚轮和触控屏使滚动行为要比点击更快更
- 准备我测试使用的Python版本为2.7.10,如果你的版本是Python3.5的话,这里就不太适合了。 使用Speech API原理我们的
- #!/usr/bin/env python# -*- coding:utf-8 -*-# *************************
- Python中有哪几种方法安装第三方模块,安装Python第三方模块的方法有很多,这里介绍三种方法安装第三方模块。【方法一】: 通过setu
- 目录实现加权轮询负载均衡思路加权轮询负载均衡代码测试代码实现加权轮询负载均衡思路代码实现一个加权负载均衡Weight
- wm_concat、listagg、xmlagg、pivot函数一、wm_concat函数(oracle12g版本开始不支持)语法:sele
- 一.__eq__方法在我们定义一个类的时候,常常想对一个类所实例化出来的两个对象进行判断这两个对象是否是完全相同的。一般情况下,我们认为如果
- 错误截图如下:类似报错的原因1.imread()中的路径参数有误a.相对路径:此项目文件夹下可写成imread(“1.jpg”);b.绝对路
- SQL 事件探查器数据列 SQL &