Python比较2个时间大小的实现方法


Posted in Python onApril 10, 2018

Python中有time和datetime,不过二者都直接取出日期和时间。 当需要比较2个时间的先后时,这两个类的函数都显得有些过于复杂。因为它们都带上了日期。

如果仅想比较时间,取出当前时间会带有日期信息,而指定比较的目标时间时还要给日期部分赋值。那个time_struct,一大堆的参数。赋值感觉很麻烦哦。

不用什么函数,直接将当前时间格式化成字符串然后转换成整数进行比较。 如下表示当前时间在09:35:10与15:01:01之间。

150101 > int(time.strftime("%H%M%S")) > 93510

简单的比较函数

此处用time写了一个简易比较方法。思路是将时间部分格式化成字符串,然后转成数字,直接相减来判断先后。

def time_cmp(first_time, second_time):
 print(first_time)
 print(second_time)
 return int(time.strftime("%H%M%S", first_time)) - int(time.strftime("%H%M%S", second_time))

测试结果

测试与输出如下:

print(time_cmp(time.gmtime(), time.strptime("09:35:10", "%H:%M:%S")))
time.struct_time(tm_year=2017, tm_mon=3, tm_mday=9, tm_hour=15, tm_min=13, tm_sec=44, tm_wday=3, tm_yday=68, tm_isdst=0)
time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=9, tm_min=35, tm_sec=10, tm_wday=0, tm_yday=1, tm_isdst=-1)
57834

tips

可见这个函数是可以达到比较时间先后的目的的。从打印的时间信息可以看出来,未赋值的日期部分是元年日期,所以不太严谨。

以上这篇Python比较2个时间大小的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python和Ruby中each循环引用变量问题(一个隐秘BUG?)
Jun 04 Python
总结Python编程中三条常用的技巧
May 11 Python
用Python实现命令行闹钟脚本实例
Sep 05 Python
Python随机生成均匀分布在三角形内或者任意多边形内的点
Dec 14 Python
浅谈python爬虫使用Selenium模拟浏览器行为
Feb 23 Python
Python 删除连续出现的指定字符的实例
Jun 29 Python
wxpython+pymysql实现用户登陆功能
Nov 19 Python
Python利用for循环打印星号三角形的案例
Apr 12 Python
Python 中由 yield 实现异步操作
May 04 Python
如何把外网python虚拟环境迁移到内网
May 18 Python
解决keras使用cov1D函数的输入问题
Jun 29 Python
Python切片列表字符串如何实现切换
Aug 06 Python
Python文本处理之按行处理大文件的方法
Apr 09 #Python
Python网络编程使用select实现socket全双工异步通信功能示例
Apr 09 #Python
Python网络编程之TCP套接字简单用法示例
Apr 09 #Python
python3 读写文件换行符的方法
Apr 09 #Python
Python基于TCP实现会聊天的小机器人功能示例
Apr 09 #Python
Python生成任意范围任意精度的随机数方法
Apr 09 #Python
python网络爬虫学习笔记(1)
Apr 09 #Python
You might like
PHP设置图片文件上传大小的具体实现方法
2013/10/11 PHP
PHP Streams(流)详细介绍及使用
2015/05/12 PHP
php array_walk_recursive 使用自定的函数处理数组中的每一个元素
2016/11/16 PHP
[原创]php使用strpos判断字符串中数字类型子字符串出错的解决方法
2017/04/01 PHP
PHP实现文件上传功能实例代码
2017/05/18 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
2017/09/29 PHP
laravel ORM 只开启created_at的几种方法总结
2018/01/29 PHP
破除一些网站复制、右键限制
2006/11/04 Javascript
小议Function.apply() 之一------(函数的劫持与对象的复制)
2006/11/30 Javascript
读jQuery之八 包装事件对象
2011/06/21 Javascript
Node.js中对通用模块的封装方法
2014/06/06 Javascript
js实现点击后将文字或图片复制到剪贴板的方法
2014/08/04 Javascript
AngularJS基础 ng-include 指令简单示例
2016/08/01 Javascript
Highcharts入门之基本属性
2016/08/02 Javascript
vuejs响应用户事件(如点击事件)
2017/03/14 Javascript
微信小程序 参数传递实例代码
2017/03/20 Javascript
微信小程序 连续旋转动画(this.animation.rotate)详解
2017/04/07 Javascript
jQuery插件ImgAreaSelect实现头像上传预览和裁剪功能实例讲解一
2017/05/26 jQuery
JS禁止浏览器右键查看元素或按F12审查元素自动关闭页面示例代码
2017/09/07 Javascript
浅谈Angular4实现热加载开发旅程
2017/09/08 Javascript
Node实战之不同环境下配置文件使用教程
2018/01/02 Javascript
JavaScript原型链与继承操作实例总结
2018/08/24 Javascript
angularJs利用$scope处理升降序的方法
2018/10/08 Javascript
Vue使用Canvas绘制图片、矩形、线条、文字,下载图片
2019/04/26 Javascript
Python写的英文字符大小写转换代码示例
2015/03/06 Python
用Python代码来绘制彭罗斯点阵的教程
2015/04/03 Python
基于python的字节编译详解
2017/09/20 Python
Python实现的列表排序、反转操作示例
2019/03/13 Python
Django框架模型简单介绍与使用分析
2019/07/18 Python
python中web框架的自定义创建
2019/09/08 Python
H&M美国官网:欧洲最大的服饰零售商
2016/09/07 全球购物
String是最基本的数据类型吗?
2013/06/13 面试题
描述RIP和OSPF区别以及特点
2015/01/17 面试题
安全宣传标语口号
2014/06/06 职场文书
中学生逃课检讨书
2015/02/17 职场文书
使用 MybatisPlus 连接 SqlServer 数据库解决 OFFSET 分页问题
2022/04/22 SQL Server