Single

Python比较2个时间的大小

Python比较2个时间的大小

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

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

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

<code class="hljs perl has-numbering">150101 > int(time.strftime("%H%M%S")) > 93510</code>

简单的比较函数

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

<code class="hljs python has-numbering">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))
</code>

测试结果

测试与输出如下:

<code class="hljs perl has-numbering">print(time_cmp(time.gmtime(), time.strptime("09:35:10", "%H:%M:%S")))</code>
<code class="hljs livecodeserver has-numbering">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</code>

tips

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

下面关于的文章您也可能喜欢,不妨参考下:

《Python核心编程 第二版》.(Wesley J. Chun ).[高清PDF中文版] 下载见 http://www.linuxidc.com/Linux/2013-06/85425.htm

零基础如何入门Python http://www.linuxidc.com/Linux/2016-10/136485.htm

Ubuntu 14.04安装Python 3.3.5 http://www.linuxidc.com/Linux/2014-05/101481.htm

CentOS 6.5 脚本自动化装 Python2.6升级2.7 http://www.linuxidc.com/Linux/2017-02/140406.htm

CentOS上源码安装Python3.4 http://www.linuxidc.com/Linux/2015-01/111870.htm

Ubuntu 14.04下Python数据处理环境搭建 http://www.linuxidc.com/Linux/2017-01/139568.htm

Python Paramiko模块安装和使用 http://www.linuxidc.com/Linux/2017-01/139973.htm

《Python开发技术详解》.( 周伟,宗杰).[高清PDF扫描版+随书视频+代码] http://www.linuxidc.com/Linux/2013-11/92693.htm

在CentOS 6.5上安装Python2.7 http://www.linuxidc.com/Linux/2016-10/136206.htm

Ubuntu 14.04 LTS下编译安装Open Babel和Python语言绑定 http://www.linuxidc.com/Linux/2017-01/139569.htm

Python常见数据结构整理 http://www.linuxidc.com/Linux/2017-02/140613.htm

:http://www.linuxidc.com/Linux/2017-03/142013.htm

暂无评论

发表评论