def year_frac(start, end):
    """
    计算两个日期间的时间长度，以年为单位

    参数:
    start (datetime): start date
    end (datetime): end date

    """
    if start > end:
        raise ValueError('start cannot be larger than end')
    return (end - start).total_seconds() / 31557600
