示例#1
0
def diff_timeframe(now: pendulum.DateTime,
                   published_datetime: pendulum.DateTime, units: str) -> int:
    """Determine time since data update was published.

    Parameters
    ----------
    now : pendulum.DateTime
        The current datetime.
    published_datetime : pendulum.DateTime
        The datetime for the published update.
    units : str
        Either "minutes", "hours" or "days".

    Returns
    -------
    int
        The amount of time that has elapsed since the dataset was updated.
    """
    if units == "minutes":
        time_since_publish = now.diff(published_datetime).in_minutes()
    if units == "hours":
        time_since_publish = now.diff(published_datetime).in_hours()
    if units == "days":
        time_since_publish = now.diff(published_datetime).in_days()

    return time_since_publish
示例#2
0
 def __find_pend_diff_str(self, pend: pendulum.DateTime):
     cd_diff = pend.diff(pendulum.now())
     (diff_days, diff_hours, diff_minutes) = (cd_diff.days, cd_diff.hours,
                                              cd_diff.minutes)
     if (not pend.is_future()):
         (diff_days, diff_hours, diff_minutes) = (-diff_days, -diff_hours,
                                                  -diff_minutes)
     diff_str = f"{diff_days} days, {diff_hours} hours, {diff_minutes} minutes from now"
     return diff_str