【问题标题】:Finding time events using datetime in Python在 Python 中使用 datetime 查找时间事件
【发布时间】:2017-11-12 02:25:51
【问题描述】:

为了编写一个计算银行账户当前状态的脚本,我需要编写一个函数来查找启动日期和当前日期之间的收入和结果事件。

在 Python 中使用 datetime 可以使用 datetime.timedelta 找到两个日期之间经过的天数,但是对于每月或每年发生的任何交易,我还需要一些东西来找到月数和年数之间,考虑到它们的不同长度。

有没有办法在 Python 中使用 datetime 查找输入日期之间的“事件”(即特定日期)数量?

例如:事务 t1 在每个月的第 2 天发生。事务 t2 从 1 月 1 日开始每 14 天发生一次。给定两个输入日期 7 月 3 日和 8 月 29 日,该函数找出 t1 和 t2 发生了多少时间(并使用它来计算最终值)

【问题讨论】:

  • 您能否提供您的代码示例以帮助其他人给予良好的答复?

标签: python datetime


【解决方案1】:

这应该以天为单位:

from datetime import date, datetime

        day_delta = (d_i[ith] - d_o).days

如果感兴趣的日期介于两个限制日之间,则差异应该是正数和负数。增量的乘积将为负数。

delta_beg = (beg_date - date_of_interest).days
delta_end = (end_date - date_of_interest).days
if delta_beg * delta_end < 0.0:
    print "date is in between"

【讨论】:

  • 是的,我知道如何获取两者之间的天数(在问题中写得不清楚),但这不允许查找特定日期是否在这些天之间
  • 这个链接有一些你可能更喜欢的方法:stackoverflow.com/questions/5464410/…
猜你喜欢
  • 2016-07-24
  • 1970-01-01
  • 2015-11-15
  • 2021-03-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-14
  • 1970-01-01
相关资源
最近更新 更多