Python 中要测试代码速度,比起 start_time = time.time()
然后 end_time = time.time()
,更便捷的方法是使用 timeit。
以下是测试 lambda 表达式与普通判断语句速度的代码。运行 10000 次,打印各自运行时间。结果是 lambda 虽然优雅但更慢。
import timeit
import numpy as np
ensure_tuple = lambda x: np.tile(x, 2) if np.isscalar(x) else np.array(x)
a_number = np.array(1)
b_number = np.array([1, 2])
code1 = '''
a = ensure_tuple(a_number)
b = ensure_tuple(b_number)
'''
code2 = '''
if np.isscalar(a_number):
a = np.tile(a_number, 2)
else:
a = a_number
if np.isscalar(b_number):
b = np.tile(b_number, 2)
else:
b = b_number
'''
print("方式1的运行时间:", timeit.timeit(code1, globals=globals(), number=10000))
print("方式2的运行时间:", timeit.timeit(code2, globals=globals(), number=10000))
标签:timeit,10000,number,np,globals,time,测试代码,快速
From: https://www.cnblogs.com/chirp/p/18006751