计算同一天的时间差
from datetime import datetime,timedelta
a1='2017-10-07 09:01'
a2='2017-10-07 09:03'
test1=datetime.strptime(a1, "%Y-%m-%d %H:%M")
test2=datetime.strptime(a2, "%Y-%m-%d %H:%M")
diff=test2-test1
print(diff.seconds)
计算不同日期的时间差
from datetime import datetime,timedelta
# 不同天的时间差
time_1 = '2020-03-02 15:00:00'
time_2 = '2020-03-03 16:00:00'
time_1_struct = datetime.strptime(time_1, "%Y-%m-%d %H:%M:%S")
time_2_struct = datetime.strptime(time_2, "%Y-%m-%d %H:%M:%S")
# 来获取时间差中的秒数。注意,seconds获得的秒只是时间差中的小时、分钟和秒部分,没有包含天数差,total_seconds包含天数差
# 所以total_seconds两种情况都是可以用的
total_seconds = (time_2_struct - time_1_struct).total_seconds()
print('不同天的秒数为:')
print(int(total_seconds))
min_sub = total_seconds / 60
print('不同天的分钟数为:')
print(int(min_sub))
判断是否是最近一根K线如果和现在时间相差不超过119分钟,就是最近一根1小时k线打印k线数据
from datetime import datetime,timedelta
now = datetime.now().strftime('%Y-%m-%d %H:%M')
past_times = str(bar.datetime)[:16]
test1 = datetime.strptime(now, "%Y-%m-%d %H:%M")
test2 = datetime.strptime(past_times, "%Y-%m-%d %H:%M")
#计算相差秒数除以60=相差分钟数
diff = (test1 - test2).total_seconds()/60
print(type(diff))
print(diff)
if int(diff) < 119:
print("1小时钟的K线数据", bar)
else:
print('加载的过去的k线不打印')
参考文献:python怎么计算时间差