python日期与时间戳的各种转换示例


Posted in Python onFebruary 12, 2020

官方文档的示例中没有我们习惯的日期格式,查了很多博客转换日期和时间戳也都是大概的能得到结果的方式,常将 datetime 和 time 两个模块混用,个人觉得时间格式化不应该这么麻烦,还得用两个模块来支持?故而翻遍了源码,总结以下常用的几种日期和时间戳的转换方式。

以下主要有三个元素(时间字符串,格式,Unix时间戳),可将时间字符串转为另一种时间格式,或将时间字符串转为时间戳,或将时间戳转为时间字符串。

datetime 和 time 两个模块,任意一个都能转换完成。

以下两个模块均列出示例:

# coding: utf-8
from datetime import datetime
import time

s = '2019-06-07 16:30:10'
f = '%Y-%m-%d %H:%M:%S'
s2 = 'Fri Jun 7 16:30:10 2019'
f2 = '%c'

// 时间字符串转时间戳, 时间字串 s和format 对应
// int(t) 转为整型
t = datetime.strptime(s, f).timestamp() # 1559856210.0
t2 = time.mktime(time.strptime(s, f)) # 1559856210.0
t3 = time.mktime(time.strptime(s2, f2)) # 1559856210.0
t4 = datetime.strptime(s2, f2).timestamp() # 1559856210.0
t5 = datetime.strptime('2019-06-07', '%Y-%m-%d').timestamp() # 1559836800.0
t6 = datetime.strptime('06/07/19', '%x').timestamp() # 1559836800.0 (06/07/2019, '%m/%d/%Y')
print(t, t2, t3, t4, t5, t6, "\n")

ut = 1559896210
# 时间戳转为时间字符串
d = datetime.fromtimestamp(ut) # 2019-06-07 16:30:10
d2 = time.strftime(f, time.localtime(ut)) # 2019-06-07 16:30:10
d3 = time.ctime(ut) # Fri Jun 7 16:30:10 2019
d4 = datetime.fromtimestamp(ut).ctime() # Fri Jun 7 16:30:10 2019
d5 = time.strftime('%Y-%m-%d', time.localtime(ut)) # 2019-06-07 (05:23:30, %H:%M:%S)
d6 = datetime.fromtimestamp(ut).date() # 2019-06-07
d7 = datetime.fromtimestamp(ut).time() # 16:30:10
d8 = time.strftime('%x', time.localtime(ut)) # 06/07/19
d9 = time.strftime('%X', time.localtime(ut)) # 16:30:10
dd = datetime.fromtimestamp(ut).strftime('%x') # 06/07/19 [(16:30:10, %X), (Fri Jun 7 16:30:10 2019, %c)]
print(d, d2, d3, d4, d5, d6, d7, d8, d9, dd, "\n")

# 格式转换
# 将 2019-06-07 16:30:10 转为 Fri Jun 7 16:30:10 2019
# (16:30:10, %X)
transf = datetime.strptime(s, f).strftime(f2)
# 将 Fri Jun 7 16:30:10 2019 转为 2019-06-07
# (2019-06-07 16:30:10, %Y-%m-%d %H:%M:%S)
transf2 = datetime.strptime(s2, f2).strftime('%Y-%m-%d')
# 将 2019-06-07 16:30:10 转为 Fri Jun 7 16:30:10 2019
# (2019-06-07 16:30:10, %Y-%m-%d %H:%M:%S)
transf3 = time.strftime('%c', time.strptime(s, f))
# 将 Fri Jun 7 16:30:10 2019 转为 2019-06-07 16:30:10
transf4 = time.strftime(f, time.strptime(s2, f2))
print(transf, transf2, transf3, transf4)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中使用smtplib和email模块发送邮件实例
Apr 22 Python
Python命名空间详解
Aug 18 Python
python基础教程之对象和类的实际运用
Aug 29 Python
python让图片按照exif信息里的创建时间进行排序的方法
Mar 16 Python
Python multiprocessing模块中的Pipe管道使用实例
Apr 11 Python
Python的Django框架中自定义模版标签的示例
Jul 20 Python
Python对象类型及其运算方法(详解)
Jul 05 Python
pyqt5 从本地选择图片 并显示在label上的实例
Jun 13 Python
Python2.7版os.path.isdir中文路径返回false的解决方法
Jun 21 Python
django框架model orM使用字典作为参数,保存数据的方法分析
Jun 24 Python
django 自定义过滤器(filter)处理较为复杂的变量方法
Aug 12 Python
如何基于Python获取图片的物理尺寸
Nov 25 Python
Python使用uuid库生成唯一标识ID
Feb 12 #Python
将python文件打包exe独立运行程序方法详解
Feb 12 #Python
Python打包模块wheel的使用方法与将python包发布到PyPI的方法详解
Feb 12 #Python
Python sep参数使用方法详解
Feb 12 #Python
Python多重继承之菱形继承的实例详解
Feb 12 #Python
Python实现桌面翻译工具【新手必学】
Feb 12 #Python
PyCharm无法引用自身项目解决方式
Feb 12 #Python
You might like
PHP STRING 陷阱原理说明
2010/07/24 PHP
jQuery EasyUI API 中文文档 - DateBox日期框
2011/10/15 PHP
memcache命令启动参数中文解释
2014/01/13 PHP
跟我学Laravel之视图 & Response
2014/10/15 PHP
原生php实现excel文件读写的方法分析
2018/04/25 PHP
thinkphp框架类库扩展操作示例
2019/11/26 PHP
filemanage功能中用到的common.js
2007/04/08 Javascript
JavaScript调用Activex控件的事件的实现方法
2010/04/11 Javascript
javascript获取当前日期时间及其它操作函数
2011/01/11 Javascript
JavaScript常用对象的方法和属性小结
2012/01/24 Javascript
asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)
2012/03/14 Javascript
getJSON调用后台json数据时函数被调用两次的原因猜想
2013/09/29 Javascript
jQuery+easyui中的combobox实现下拉框特效
2015/02/27 Javascript
vue的props实现子组件随父组件一起变化
2016/10/27 Javascript
ECMAScript6--解构
2017/03/30 Javascript
xmlplus组件设计系列之网格(DataGrid)(10)
2017/05/05 Javascript
JS中async/await实现异步调用的方法
2019/08/28 Javascript
Vue使用mixin分发组件的可复用功能
2019/09/01 Javascript
[37:37]DAC2018 4.4 淘汰赛 Optic vs Mineski 第二场
2018/04/05 DOTA
python实现2014火车票查询代码分享
2014/01/10 Python
python实现dict版图遍历示例
2014/02/19 Python
跟老齐学Python之一个免费的实验室
2014/09/14 Python
Python的Tornado框架异步编程入门实例
2015/04/24 Python
Python之Scrapy爬虫框架安装及简单使用详解
2017/12/22 Python
python 实现读取一个excel多个sheet表并合并的方法
2019/02/12 Python
Python3 执行系统命令并获取实时回显功能
2019/07/09 Python
面向对象学习之pygame坦克大战
2019/09/11 Python
英国天然抗衰老护肤品品牌:Nakin Skin Care
2019/04/16 全球购物
英文版销售经理个人求职信
2013/11/20 职场文书
运动会稿件100字
2014/09/24 职场文书
2014年法务工作总结
2014/12/11 职场文书
小学家长意见怎么写
2015/06/03 职场文书
保护地球的宣传语
2015/07/13 职场文书
人力资源部工作计划
2019/05/14 职场文书
Mysql中常用的join连接方式
2022/05/11 MySQL
HttpClient实现文件上传功能
2022/08/14 Java/Android