def time_diff(start_time, end_time, diff_type="second"):
"""
计算时间差
:param datetime.datetime start_time: 起始时间
:param datetime.datetime end_time: 结束时间
:param str diff_type: 时间类型
:return: 相差多少个时间类型
"""
date_dict = {
"second": 1,
"minute": 60,
"hour": 3600,
"day": 86400
}
diff = (end_time - start_time).total_seconds()
if diff_type in date_dict:
return diff // date_dict[diff_type]
else:
raise KeyError("diff_type must in %s" % date_dict.keys())
当然,使用calendar包也是不错的选择