Python中生成Epoch的方法
发布时间 - 2026-01-11 00:50:06 点击率:次在Python2中datetime对象没有timestamp方法,不能很方便的生成epoch,现有方法没有处理很容易导致错误。关于Epoch可以参见时区与Epoch

0 Python中生成Epoch
from datetime import datetime # python3 datetime.now().timestamp() # python2 import time time.mktime(datetime.now().timetuple()) # 为了兼容python2和3,该用法使用更广泛
1 错误代码
from datetime import datetime import pytz aware_date = datetime.utcnow().replace(tzinfo=pytz.utc) time.mktime(aware_date.timetuple()) # bug here
2 原因
Python中的datetime对象分为带时区信息和不带时区信息的两种对象即naive和aware对象。在处理naive时,一切皆默认为系统时区,没有任何问题。
在Python3中执行timestamp时对于naive对象,按照默认时区处理(调用time.mktime),而aware对象,则带上时区计算与UTC基准时间的间隔秒数得到,也就是将时区信息考虑在内。
而Python2和3中的timetuple方法,返回的结果没有包含时区信息,也没有进行时区转换。即调用timetuple对于aware日期对象而言,时区信息被丢弃,因此再调用time.mktime将得到一个错误的结果
3 解决办法
1、方法一:将其他时区的aware日期,转换为当前系统默认的时区的aware对象, 由于与系统时区一致,因此该aware对象与无时区的naive对象执行timetuple的效果一样。
转换时区参见timezone,即调用astimezone方法,参数为转换后的时区(tzinfo实例)
由于Python2中缺失tzinfo(抽象基类)的各个时区实例,需要自己构造时区对象。
时区实例可以参考官方文档的实现datetime或使用推荐的第三方库pytz
2、方法二:计算时间差
_EPOCH = datetime(1970, 1, 1, tzinfo=pytz.utc) # 第三方库 pytz (aware_date - _EPOCH).total_seconds()
以上这篇Python中生成Epoch的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# python
# epoch
# 通过代码实例展示Python中列表生成式的用法
# 浅谈Python中列表生成式和生成器的区别
# python生成器的使用方法
# Python生成器(Generator)详解
# 给大家
# 第三方
# 没有任何
# 两种
# 将其
# 很容易
# 希望能
# 这篇
# 不带
# 转换为
# 解决办法
# 很方便
# 小编
# 大家多多
# 默认为
# 一切皆
# 错误代码
# 文档
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
网站页面设计需要考虑到这些问题
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
EditPlus 正则表达式 实战(3)
Laravel如何实现API版本控制_Laravel API版本化路由设计策略
使用PHP下载CSS文件中的所有图片【几行代码即可实现】
公司网站制作需要多少钱,找人做公司网站需要多少钱?
SQL查询语句优化的实用方法总结
如何在七牛云存储上搭建网站并设置自定义域名?
Laravel如何升级到最新版本?(升级指南和步骤)
如何快速生成凡客建站的专业级图册?
Android GridView 滑动条设置一直显示状态(推荐)
Laravel如何处理异常和错误?(Handler示例)
Laravel如何实现本地化和多语言支持_Laravel多语言配置与翻译文件管理
Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】
软银砸40亿美元收购DigitalBridge 强化AI资料中心布局
矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?
通义万相免费版怎么用_通义万相免费版使用方法详细指南【教程】
网易LOFTER官网链接 老福特网页版登录地址
Laravel如何使用模型观察者?(Observer代码示例)
Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程
如何在阿里云部署织梦网站?
无锡营销型网站制作公司,无锡网选车牌流程?
Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案
Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复
如何自定义建站之星网站的导航菜单样式?
Java解压缩zip - 解压缩多个文件或文件夹实例
lovemo网页版地址 lovemo官网手机登录
Laravel distinct去重查询_Laravel Eloquent去重方法
Laravel Octane如何提升性能_使用Laravel Octane加速你的应用
如何在IIS中新建站点并解决端口绑定冲突?
QQ浏览器网页版登录入口 个人中心在线进入
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
济南网站建设制作公司,室内设计网站一般都有哪些功能?
Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
三星、SK海力士获美批准:可向中国出口芯片制造设备
如何快速打造个性化非模板自助建站?
百度浏览器如何管理插件 百度浏览器插件管理方法
Laravel怎么为数据库表字段添加索引以优化查询
如何快速重置建站主机并恢复默认配置?
电商网站制作价格怎么算,网上拍卖流程以及规则?
Python文本处理实践_日志清洗解析【指导】
Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】
Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制
javascript日期怎么处理_如何格式化输出
Laravel如何生成API文档?(Swagger/OpenAPI教程)
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
如何快速生成专业多端适配建站电话?

