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备份Mysql脚本
Aug 11 Python
Python 执行字符串表达式函数(eval exec execfile)
Aug 11 Python
Python中使用scapy模拟数据包实现arp攻击、dns放大攻击例子
Oct 23 Python
举例讲解Python中is和id的用法
Apr 03 Python
python修改操作系统时间的方法
May 18 Python
解决sublime+python3无法输出中文的问题
Dec 12 Python
使用python实现kNN分类算法
Oct 16 Python
python实现低通滤波器代码
Feb 26 Python
Python celery原理及运行流程解析
Jun 13 Python
浅谈Keras的Sequential与PyTorch的Sequential的区别
Jun 17 Python
Python模块常用四种安装方式
Oct 20 Python
Python中使用Lambda函数的5种用法
Apr 01 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
php木马攻击防御之道
2008/03/24 PHP
PHP 中文处理技巧
2010/04/25 PHP
php数组函数序列之array_unshift() 在数组开头插入一个或多个元素
2011/11/07 PHP
php实现的获取网站备案信息查询代码(360)
2013/09/23 PHP
10个实用的脚本代码工具
2010/05/04 Javascript
页面只有一个text的时候,回车自动submit的解决方法
2010/08/12 Javascript
javascript图像处理—仿射变换深度理解
2013/01/16 Javascript
jQuery 网易相册鼠标移动显示隐藏效果实现代码
2013/03/31 Javascript
JS解决url传值出现中文乱码的另类办法
2013/04/08 Javascript
js 页面元素的几个用法总结
2013/11/18 Javascript
JavaScript 学习笔记之语句
2015/01/14 Javascript
jQuery实现折线图的方法
2015/02/28 Javascript
创建基于Bootstrap的下拉菜单的DropDownList的JQuery插件
2016/06/02 Javascript
浅析JavaScript中break、continue和return的区别
2016/11/30 Javascript
微信小程序 本地数据读取实例
2017/04/27 Javascript
原生JS实现N级菜单的代码
2017/05/21 Javascript
基于VUE选择上传图片并页面显示(图片可删除)
2017/05/25 Javascript
AngularJS常见过滤器用法实例总结
2017/07/06 Javascript
利用纯JS实现像素逐渐显示的方法示例
2017/08/14 Javascript
基于js中document.cookie全面解析
2017/09/14 Javascript
[01:14:31]Secret vs VG 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
Python实现遍历windows所有窗口并输出窗口标题的方法
2015/03/13 Python
浅谈Tensorflow模型的保存与恢复加载
2018/04/26 Python
python 监听salt job状态,并任务数据推送到redis中的方法
2019/01/14 Python
Python实现一个优先级队列的方法
2020/07/31 Python
python实现发送带附件的邮件代码分享
2020/09/22 Python
凯特·丝蓓英国官网:Kate Spade英国
2016/11/07 全球购物
Staples英国官方网站:办公用品一站式采购
2017/10/06 全球购物
业务代表的岗位职责
2013/11/16 职场文书
办公室秘书自我鉴定
2014/01/18 职场文书
学习保证书100字
2015/02/26 职场文书
留学推荐信英文范文
2015/03/26 职场文书
2015年档案室工作总结
2015/05/23 职场文书
2015年初中教师个人工作总结
2015/07/21 职场文书
再读《皇帝的新衣》的读后感悟!
2019/08/07 职场文书
html css3不拉伸图片显示效果
2021/06/07 HTML / CSS