【问题标题】:How I calculate the difference of two date time [duplicate]我如何计算两个日期时间的差异[重复]
【发布时间】:2013-05-14 16:54:25
【问题描述】:

在我的数据库中,我以以下格式存储了日期时间。我想在几秒钟内得到两个样本之间的差异。有什么简单的方法吗?

   u'2013-05-20 05:09:06'
   u'2013-05-20 05:10:06'

【问题讨论】:

    标签: python datetime datediff


    【解决方案1】:

    使用datetime 模块。

    >>> import datetime
    >>> start = datetime.datetime.strptime(u'2013-05-20 05:09:06', '%Y-%m-%d %H:%M:%S')
    >>> end = datetime.datetime.strptime(u'2013-05-20 05:10:06', '%Y-%m-%d %H:%M:%S')
    >>> (end - start).total_seconds()
    60.0
    

    【讨论】:

    • 谢谢@Lennart 我怎么能在几秒钟内得到差异
    • @Hacker:已更新。您可能想尝试阅读文档。 ;-)
    【解决方案2】:

    几个小时 选择日期差异(hh,'02/02/2013 00:00:00','02/02/2013 01:02:02')

    几分钟 选择日期差异(mi,'02/02/2013 00:00:00','02/02/2013 01:02:02')

    几秒钟 选择日期差异(ss,'02/02/2013 00:00:00','02/02/2013 01:02:02')

    一天 选择日期差异(dd,'02/02/2013 00:00:00','02/03/2013 01:02:02')

    月份 选择日期差异(mm,'02/02/2013 00:00:00','03/03/2013 01:02:02')

    一年 选择日期差异(yy,'02/02/2013 00:00:00','03/03/2014 01:02:02')

    试试这个

    【讨论】:

      【解决方案3】:

      您可以简单地减去两个 datetime 对象并得到一个 datetime.timedelta 对象,它将差值存储为 datetime.timedeleta(days, seconds, microseconds)。

      例如,你可以这样做

      >>>difference = second_date - first_date
      >>>difference
      datetime.timedelta(0, 60)
      

      可以简单地使用 datetime.timedelta().seconds 访问秒数

      >>>difference.seconds
      60
      

      【讨论】:

        【解决方案4】:

        如果您使用的是 py2.7,那么只需使用 delta.total_seconds()

        >>> s = datetime(2013, 05, 20, 5, 9, 6)
        >>> t = datetime(2013, 05, 21, 6, 29, 30)
        >>> u = t - s
        >>> u.seconds
        4824
        >>> u.total_seconds()
        91224.0
        

        但对于早期版本,您需要单独添加时间部分。

        >>> u.seconds + u.days * 86400
        91224
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2017-11-16
          • 1970-01-01
          • 1970-01-01
          • 2014-08-23
          • 2021-11-25
          • 2011-08-01
          • 1970-01-01
          • 2011-05-21
          相关资源
          最近更新 更多