快速使用 timeit 测试代码运行速度
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))

浙公网安备 33010602011771号