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字符串的常用操作方法小结
May 21 Python
批量获取及验证HTTP代理的Python脚本
Apr 23 Python
Python实现采用进度条实时显示处理进度的方法
Dec 19 Python
利用Python在一个文件的头部插入数据的实例
May 02 Python
Python如何处理大数据?3个技巧效率提升攻略(推荐)
Apr 15 Python
python ubplot使用方法解析
Jan 10 Python
python正则表达式实例代码
Mar 03 Python
windows、linux下打包Python3程序详细方法
Mar 17 Python
Python OpenCV中的numpy与图像类型转换操作
Dec 11 Python
python UIAutomator2使用超详细教程
Feb 19 Python
解决pip安装tensorflow中出现的no module named tensorflow.python 问题方法
Feb 20 Python
python绘图subplots函数使用模板的示例代码
Apr 30 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
ThinkPHP缓存方法S()概述
2014/06/13 PHP
ThinkPHP 3.2 数据分页代码分享
2014/10/14 PHP
Laravel中获取路由参数Route Parameters的五种方法示例
2017/09/29 PHP
js获取GridView中行数据的两种方法 分享
2013/07/13 Javascript
javascript jquery对form元素的常见操作详解
2016/06/12 Javascript
indexedDB bootstrap angularjs之 MVC DOMO (应用示例)
2016/06/20 Javascript
微信小程序 点击控件后选中其它反选实例详解
2017/02/21 Javascript
Vue.extend构造器的详解
2017/07/17 Javascript
详解angular笔记路由之angular-router
2017/09/12 Javascript
vue-resource + json-server模拟数据的方法
2017/11/02 Javascript
vue 组件中添加样式不生效的解决方法
2018/07/06 Javascript
Vuex新手的理解与使用详解
2019/05/31 Javascript
Angular 多级路由实现登录页面跳转(小白教程)
2019/11/19 Javascript
[01:05]DOTA2完美大师赛趣味视频之选手教你打职业
2017/11/23 DOTA
[01:10]DOTA2英雄背景故事第四期之混沌法则混沌骑士
2020/07/16 DOTA
Python3基础之基本运算符概述
2014/08/13 Python
python&MongoDB爬取图书馆借阅记录
2016/02/05 Python
python字典DICT类型合并详解
2017/08/17 Python
分析Python中解析构建数据知识
2018/01/20 Python
Python cookbook(数据结构与算法)将序列分解为单独变量的方法
2018/02/13 Python
Python登录注册验证功能实现
2018/06/18 Python
基于Python实现迪杰斯特拉和弗洛伊德算法
2020/05/27 Python
Python中三元表达式的几种写法介绍
2019/03/04 Python
python利用wx实现界面按钮和按钮监听和字体改变的方法
2019/07/17 Python
python标准库OS模块函数列表与实例全解
2020/03/10 Python
在python中利用pycharm自定义代码块教程(三步搞定)
2020/04/15 Python
养生餐厅创业计划书范文
2014/03/26 职场文书
爱我中华演讲稿
2014/05/20 职场文书
施工安全生产承诺书
2014/05/23 职场文书
市级青年文明号申报材料
2014/05/26 职场文书
食品质检员岗位职责
2015/04/08 职场文书
装修公司管理制度
2015/08/05 职场文书
网络研修心得体会
2016/01/08 职场文书
四年级作文之说明文作文
2019/10/14 职场文书
pytorch中的model.eval()和BN层的使用
2021/05/22 Python
使用CSS连接数据库的方式
2022/02/28 HTML / CSS