讨论的问题
#写法一
for i in range(len(a)):
pass
#写法二
leng=len(a)
for i in range(leng):
pass
在c中第2种写法快,但是不了解python的机制,于是就想测试看看是否在python中也是第二种写法快。
测试结果是第二种快,
计时间代码来自于 https://zhuanlan.zhihu.com/p/110005305
测试代码如下
import platform
import time
a=[]*1000000000
print('系统:',platform.system())
T1 = time.perf_counter()
for i in range(len(a)):
pass
T2 =time.perf_counter()
print('程序运行时间:%s毫秒' % ((T2 - T1)*1000))
T1 = time.perf_counter()
lens=len(a)
for i in range(lens):
pass
T2 =time.perf_counter()
print('程序运行时间:%s毫秒' % ((T2 - T1)*1000))
运行结果
结论
使用第二种会比第一种快