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中的readline()方法的使用
May 24 Python
在python3环境下的Django中使用MySQL数据库的实例
Aug 29 Python
Python编程中NotImplementedError的使用方法
Apr 21 Python
Python global全局变量函数详解
Sep 18 Python
python实现QQ邮箱/163邮箱的邮件发送
Jan 22 Python
Python对象与引用的介绍
Jan 24 Python
python 图片去噪的方法示例
Jul 09 Python
python使用 request 发送表单数据操作示例
Sep 25 Python
python 和c++实现旋转矩阵到欧拉角的变换方式
Dec 04 Python
Python如何访问字符串中的值
Feb 09 Python
Python实现桌面翻译工具【新手必学】
Feb 12 Python
Django中日期时间型字段进行年月日时分秒分组统计
Nov 27 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
2019十大人气国漫
2020/03/13 国漫
一篇入门的php Class 文章
2007/04/04 PHP
PHP设计模式之命令模式的深入解析
2013/06/13 PHP
php实现图片缩放功能类
2013/12/18 PHP
Yii开启片段缓存的方法
2016/03/28 PHP
Yii2创建控制器(createController)方法详解
2016/07/23 PHP
如何使用php等比例缩放图片
2016/10/12 PHP
Javascript实现CheckBox的全选与取消全选的代码
2010/07/20 Javascript
JS操作CSS随机改变网页背景实现思路
2014/03/10 Javascript
深入理解JavaScript系列(37):设计模式之享元模式详解
2015/03/04 Javascript
angularjs过滤器--filter与ng-repeat配合有奇效
2017/04/20 Javascript
代码详解javascript模块加载器
2018/03/04 Javascript
jQuery实现每日秒杀商品倒计时功能
2019/09/06 jQuery
处理JavaScript值为undefined的7个小技巧
2020/07/28 Javascript
javascript实现多边形碰撞检测
2020/10/24 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
[26:21]浴火之凤-TI4世界冠军Newbee战队纪录片
2014/08/07 DOTA
[01:00] DOTA2英雄背景故事第五期之重力引力法则谜团
2020/07/16 DOTA
Python类的专用方法实例分析
2015/01/09 Python
Python实现读取文件最后n行的方法
2017/02/23 Python
django定期执行任务(实例讲解)
2017/11/03 Python
对Python使用mfcc的两种方式详解
2019/01/09 Python
python求加权平均值的实例(附纯python写法)
2019/08/22 Python
Python 从attribute到property详解
2020/03/05 Python
Django 设置admin后台表和App(应用)为中文名的操作方法
2020/05/10 Python
探讨HTML5移动开发的几大特性(必看)
2015/12/30 HTML / CSS
数据库什么时候应该被重组
2012/11/02 面试题
电子信息专业学生自荐信
2013/11/09 职场文书
小学安全教育材料
2014/02/17 职场文书
婚礼秀策划方案
2014/05/19 职场文书
羽毛球社团活动总结
2014/06/27 职场文书
2014年教师个人工作总结
2014/11/10 职场文书
2015大学自主招生自荐信范文
2015/03/04 职场文书
图书借阅制度范本
2015/08/06 职场文书
《女娲补天》读后感5篇
2019/12/31 职场文书
浅谈redis的过期时间设置和过期删除机制
2022/03/18 MySQL