在Python中统计时间通常有以下几种方法:
1. 使用`time.time()`
import time
start = time.time()
执行代码
end = time.time()
print(end - start) 输出执行时间,单位是秒
2. 使用`time.perf_counter()`
import time
start = time.perf_counter()
执行代码
end = time.perf_counter()
print(end - start) 输出执行时间,单位是秒
3. 使用`datetime.datetime.now()`
import datetime
start = datetime.datetime.now()
执行代码
end = datetime.datetime.now()
print((end - start).total_seconds()) 输出执行时间,单位是秒
4. 使用`time.clock()`(Python 3.8以下版本)
import time
start = time.clock()
执行代码
end = time.clock()
print(end - start) 输出执行时间,单位是秒
5. 使用装饰器`@CalcRunTime.calcruntime`(自定义计时)
import time
class CalcRunTime:
@staticmethod
def calcruntime(func):
@functools.wraps(func)
def inner(*args, kwargs):
t0 = time.time()
result = func(*args, kwargs)
time_use = time.time() - t0
func_name = func.__name__
parameter = []
if args:
parameter.append(', '.join(repr(arg) for arg in args))
if kwargs:
kwargs_str = ', '.join('%s=%r' % (k, v) for k, v in kwargs.items())
parameter.append(kwargs_str)
parameter = ', '.join(parameter)
print('[%0.8fs] %s(%s) -> %r' % (time_use, func_name, parameter, result))
return result
return inner
@CalcRunTime.calcruntime
def main():
执行代码
pass
选择合适的方法取决于你的具体需求,例如需要精确到秒、毫秒,或者需要更详细的性能分析。`time.perf_counter()`提供了更高精度的计时,适合用于性能分析。