python3 中时间戳、时间、日期的转换和加减操作


Posted in Python onJuly 14, 2020

1.当前时间戳转换为指定格式的日期

# -*- coding: utf-8 -*-
# @Time  : 2019/5/31 10:56
# @Author : 甄超锋
# @Email  : 4535@sohu.com
# @File  : test.py
# @Software: PyCharm

import datetime
import time
# 使用time
timeStamp = time.time() # 1559286774.2953627
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
print(otherStyleTime)  # 2019-05-31 15:12:54
# 使用datetime
timeStamp = time.time() # 1559286774.2953627
dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
otherStyleTime = dateArray.strftime("%Y-%m-%d %H:%M:%S")
print(otherStyleTime)  # 2019-05-31 07:12:54

2.把字符串类型的日期转换为时间戳

# -*- coding: utf-8 -*-
# @Time  : 2019/5/31 10:56
# @Author : 甄超锋
# @Email  : 4535@sohu.com
# @File  : test.py
# @Software: PyCharm

import time
# 字符类型的时间1
tss1 = '2019-05-31 15:12:54'
# 转为时间数组
timeArray = time.strptime(tss1, "%Y-%m-%d %H:%M:%S")
print(timeArray)
# timeArray可以调用tm_year等
print(timeArray.tm_year)  # 2019
# 字符类型的时间2
tss2 = "Fri Jun 21 13:22:37 +0800 2019"
timeArray = time.strptime(tss2, "%a %b %d %H:%M:%S %z %Y")
# timeArray可以调用tm_year等
print(timeArray.tm_year)  # 2019
# 转为时间戳
timeStamp = int(time.mktime(timeArray))
print(timeStamp) # 1559286774

3.更改str类型日期的显示格式

# -*- coding: utf-8 -*-
# @Time  : 2019/5/31 10:56
# @Author : 甄超锋
# @Email  : 4535@sohu.com
# @File  : test.py
# @Software: PyCharm

import time
import datetime
tss2 = "2019-05-31 15:12:54"
# 转为数组
timeArray = time.strptime(tss2, "%Y-%m-%d %H:%M:%S")
# 转为其它显示格式
otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
print(otherStyleTime) # 2019/05/31 15:12:54

tss3 = "2019/05/31 15:12:54"
timeArray = time.strptime(tss3, "%Y/%m/%d %H:%M:%S")
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
print(otherStyleTime) # 2019-05-31 15:12:54

tss4 = "2019/05/31 15:12:54"
otherStyleTime = datetime.datetime.strptime(tss4, "%Y/%m/%d %H:%M:%S").strftime("%Y-%m-%d %H:%M:%S")
print(otherStyleTime) # 2019-05-31 15:12:54

4.日期的加减

两个日期的加减,计算间隔多少天。

# -*- coding: utf-8 -*-
# @Time  : 2019/5/31 10:56
# @Author : 甄超锋
# @Email  : 4535@sohu.com
# @File  : test.py
# @Software: PyCharm

import datetime
d1 = datetime.datetime.strptime('2019-05-31 15:12:54', '%Y-%m-%d %H:%M:%S')
d2 = datetime.datetime.strptime('2019-05-22 15:12:54', '%Y-%m-%d %H:%M:%S')
delta = d1 - d2
print(delta.days) # 9 间隔9天

今天3天后的日期。

# -*- coding: utf-8 -*-
# @Time  : 2019/5/31 10:56
# @Author : 甄超锋
# @Email  : 4535@sohu.com
# @File  : test.py
# @Software: PyCharm

import datetime
now = datetime.datetime.now()
delta = datetime.timedelta(days=3)
n_days = now + delta
print(n_days.strftime('%Y-%m-%d %H:%M:%S')) # 2019-06-03 15:38:32

今天3天前的日期。

# -*- coding: utf-8 -*-
# @Time  : 2019/5/31 10:56
# @Author : 甄超锋
# @Email  : 4535@sohu.com
# @File  : test.py
# @Software: PyCharm

import datetime
now = datetime.datetime.now()
delta = datetime.timedelta(days=3)
n_days = now - delta
print(n_days.strftime('%Y-%m-%d %H:%M:%S')) # 2019-05-28 15:39:33

在datetime模块中有timedelta类,这个类的对象用于表示一个时间间隔,比如两个日期或者时间的差别。

构造方法:

datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)

所有的参数都有默认值0,这些参数可以是int或float,正的或负的。

可以通过timedelta.days、tiemdelta.seconds等获取相应的时间值。

timedelta类的实例,支持加、减、乘、除等操作,所得的结果也是timedelta类的实例。

由于tiemdelta最高只能减去天数 所以减月份要用另一个方法下面的是现在的时间减去3个月 得到3个月前的日期

import datetime
import dateutil.relativedelta
now_date_time = datetime.datetime.now()
month_date = now_date_time + dateutil.relativedelta.relativedelta(months=-3)

日期时间格式化(带毫秒)

import datetime

print(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')) # 2019-01-28 11:09:01.529864

以上这篇python3 中时间戳、时间、日期的转换和加减操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python下载歌词并嵌入歌曲文件中的实现代码
Nov 13 Python
python实现Adapter模式实例代码
Feb 09 Python
Python面向对象程序设计OOP入门教程【类,实例,继承,重载等】
Jan 05 Python
Python判断两个文件是否相同与两个文本进行相同项筛选的方法
Mar 01 Python
Django 迁移、操作数据库的方法
Aug 02 Python
python os.fork() 循环输出方法
Aug 08 Python
Python注释、分支结构、循环结构、伪“选择结构”用法实例分析
Jan 09 Python
基于Python计算圆周率pi代码实例
Mar 25 Python
Selenium基于PIL实现拼接滚动截图
Apr 10 Python
jupyter notebook实现显示行号
Apr 13 Python
Django用户登录与注册系统的实现示例
Jun 03 Python
利用Matlab绘制各类特殊图形的实例代码
Jul 16 Python
python转化excel数字日期为标准日期操作
Jul 14 #Python
Python 实现将某一列设置为str类型
Jul 14 #Python
使用python编写一个语音朗读闹钟功能的示例代码
Jul 14 #Python
利用python对excel中一列的时间数据更改格式操作
Jul 14 #Python
Python库安装速度过慢解决方案
Jul 14 #Python
解决Python paramiko 模块远程执行ssh 命令 nohup 不生效的问题
Jul 14 #Python
python实现xlwt xlrd 指定条件给excel行添加颜色
Jul 14 #Python
You might like
天津市收音机工业发展史
2021/03/04 无线电
在PHP中利用XML技术构造远程服务(下)
2006/10/09 PHP
Oracle 常见问题解答
2006/10/09 PHP
深入了解php4(1)--回到未来
2006/10/09 PHP
用PHP的ob_start() 控制您的浏览器cache
2009/08/03 PHP
javascript 贪吃蛇实现代码
2008/11/22 Javascript
javascript的数据类型、字面量、变量介绍
2012/05/23 Javascript
在javascript中对于DOM的加强
2013/04/11 Javascript
javascript工厂方式定义对象
2014/12/26 Javascript
使用jquery组件qrcode生成二维码及应用指南
2015/02/22 Javascript
jQuery实现Meizu魅族官方网站的导航菜单效果
2015/09/14 Javascript
jQuery图片旋转插件jQueryRotate.js用法实例(附demo下载)
2016/01/21 Javascript
详解JavaScript中的事件流和事件处理程序
2016/05/20 Javascript
微信小程序 form组件详解及简单实例
2017/01/10 Javascript
javascript判断元素存在和判断元素存在于实时的dom中的方法
2017/01/17 Javascript
迅速了解一下ES10中Object.fromEntries的用法使用
2019/03/05 Javascript
基于JS实现web端录音与播放功能
2019/04/17 Javascript
vue 中几种传值方法(3种)
2019/11/12 Javascript
js判断在哪个浏览器打开项目的方法
2020/01/21 Javascript
Vue中引入svg图标的两种方式
2021/01/14 Vue.js
[57:29]Alliance vs KG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/17 DOTA
Python将字典转换为XML的方法
2020/08/01 Python
html5 Canvas画图教程(7)—canvas里画曲线之quadraticCurveTo方法
2013/01/09 HTML / CSS
绘儿乐产品官方在线商店:Crayola.com
2019/09/07 全球购物
绘画专业自荐信范文
2014/02/23 职场文书
洗发露广告词
2014/03/14 职场文书
黄金搭档广告词
2014/03/21 职场文书
师德师风自我剖析材料
2014/09/27 职场文书
小学教师师德整改措施
2014/09/29 职场文书
前台岗位职责
2015/02/13 职场文书
高中生思想道德自我评价
2015/03/09 职场文书
小学教师教学反思
2016/02/24 职场文书
2019年工作总结范文
2019/05/21 职场文书
如何在pycharm中快捷安装pip命令(如pygame)
2021/05/31 Python
面试被问select......for update会锁表还是锁行
2021/11/11 MySQL
Apache Hudi数据布局黑科技降低一半查询时间
2022/03/31 Servers