我不同意g.d.d.c,乘法快得多!在"""Evaluating the difference in execution time between n*n and n**2"""
from time import time
n = 2
t = time()
for i in range(5000000):
n**2
print("Time for n**2:\t%0.3f" % (time()-t))
t = time()
for i in range(5000000):
n*n
print("Time for n*n:\t%0.3f" % (time()-t))
def test(n):
"""
Difference in execution time between n*n and n**2
within function scope.
"""
t = time()
for i in range(5000000):
n**2
print("Time for n**2:\t%0.3f" % (time()-t))
t = time()
for i in range(5000000):
n*n
print("Time for n*n:\t%0.3f" % (time()-t))
test(n)
结果:
^{pr2}$
你可以看到乘法在函数外快4倍,在函数中快7倍。我无法解释这两个测试之间的区别,我也不确定n*n和n**2之间的区别,但这可能与Python是一种解释性语言有关,后者的处理需要更多时间,即使处理器操作非常相似,如g.d.d.c所示。在