【问题标题】:How to compare string time in python [duplicate]如何在python中比较字符串时间[重复]
【发布时间】:2020-02-10 23:42:09
【问题描述】:

我有两个字符串输入,我需要比较它们是否相差 15 分钟

input1:20-25-43(字符串,代表HH-MM-SS) input2: 20-40-43(字符串,代表HH-MM-SS)

最初,我想替换连字符(-)并将字符串转换为数字和input2 - input1。但是,结果是 1500 或 5500。

我想知道是否可以使用 DateTime 对象的 time() 方法?

【问题讨论】:

  • 这和bucketamazon-s3有什么关系?
  • 这能回答你的问题吗? Comparing two date strings in Python
  • 你可以使用基本的包时间方法来做到这一点,但这可能是矫枉过正。将字符串转换为数字并进行减法很好,但请记住每分钟 60 秒和每小时 60 分钟。
  • @ScottHunter 它是 s3 密钥,密钥命名约定包括 id-date1-time1-date2-time2.extension
  • @alift 是的,确实如此!非常感谢

标签: python string datetime


【解决方案1】:

你可以使用datetime.strptime来解析它们。

>>> from datetime import datetime
>>> s1 = datetime.strptime('20-25-43','%H-%M-%S')
>>> s2 = datetime.strptime('20-40-43','%H-%M-%S')
>>> (s2-s1).seconds
900

【讨论】:

    【解决方案2】:

    使用datetime.strptime,您可以计算时间之间的差异。由于您使用的是string,因此您需要使用strptime 将其转换为datetime 对象。

    string1 = '20-25-43'
    string2 = '20-40-42'
    FRMAT = '%H-%M-%S'
    
    str(datetime.strptime(string2, FRMAT) - datetime.strptime(string1, FRMAT))
    
    
    #'0:15:00'
    

    然后您可以检查您的结果是 == 到 15 分钟。

    【讨论】:

      猜你喜欢
      • 2016-05-31
      • 1970-01-01
      • 2021-02-10
      • 1970-01-01
      • 1970-01-01
      • 2011-02-28
      • 2019-05-20
      • 2021-12-15
      相关资源
      最近更新 更多