Python 计算特定操作后经过的时间

Python 计算特定操作后经过的时间,python,function,loops,time,Python,Function,Loops,Time,我想计算两组相等的时间。我使用time.time()计算时间。但每当我计算集合相等的时间时,它返回的时间为1520763846.19。我想计算两个集合相等并且必须执行一些下游操作的时间。如果有任何帮助,我们将不胜感激 dis\u cars和dis\u cars是两套 def cars_on_road(dis_cars,forbid_cars): if len(forbid_cars) > 0 and dis_cars == forbid_cars: time_cal

我想计算两组相等的时间。我使用
time.time()
计算时间。但每当我计算集合相等的时间时,它返回的时间为
1520763846.19
。我想计算两个集合相等并且必须执行一些下游操作的时间。如果有任何帮助,我们将不胜感激

dis\u cars和dis\u cars
是两套

def cars_on_road(dis_cars,forbid_cars):
    if len(forbid_cars) > 0 and dis_cars == forbid_cars:
        time_calculate = time.time()
        print "time_calculate" + str(time_calculate)

下面是使用
datetime
模块的一种方法

import time
from datetime import datetime

def time_check(dis_cars, forbid_cars):
    if len(forbid_cars) > 0 and dis_cars == forbid_cars:
        time_calculate = datetime.now()
        return time_calculate
    else:
        return None

dis_cars = {'A', 'B', 'C'}
forbid_cars = {'C', 'B', 'A'}

check_time = time_check(dis_cars, forbid_cars)

time.sleep(3)

time_change_since_match = (datetime.now() - check_time).total_seconds()
# 3.000125
解释

  • 函数应该
    返回一个值,该值可以存储在变量中供以后使用。打印值不会将该值存储在内存中
  • 稍后,您可以再次访问此变量,并使用
    total_seconds()
    等方法返回以秒为单位的时差

谢谢。但是你能指出我所做的错误吗?
def __init__(self):
    self.last = time.time() #Initialization instant

def cars_on_road(self, dis_cars,forbid_cars):
    if len(forbid_cars) > 0 and dis_cars == forbid_cars:
        time_calculate = time.time() - self.last #Difference between self.last and the instant the sets became equal
        print "time_calculate" + str(time_calculate)
        self.last = time.time() #Do this if this method will be called again