• 技术文章 >常见问题 >Python常见问题

    python时间如何比较

    爱喝马黛茶的安东尼爱喝马黛茶的安东尼2019-11-04 13:16:16原创6946

    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

    众多python培训视频,尽在python学习网,欢迎在线学习!

    专题推荐:python 时间 比较
    上一篇:python上下文是什么 下一篇:python的sort()报错是什么原因

    相关文章推荐

    • python的时间函数怎么用• python如何计算时间差• python 如何获取当前时间

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网