遵循以下三个原则,提高运行效率,避免不必要的低效计算:
- 尽量减少循环内部不必要的计算
- 嵌套循环中,尽量减少内层循环的计算,尽可能向外提。
- 局部变量查询较快,尽量使用局部变量。
#循环代码优化测试 import time start=time.time() for i in range(1000): result=[] for m in range(10000): result.append(i*1000+m*100) end=time.time() print("耗时,{0}".format((end-start))) start2=time.time() for i in range(1000): result=[] c=i*1000 for m in range(10000): result.append(c+m*100) end2=time.time() print("耗时:{0}".format((end2-start2)))其他优化手段:
- 连结多个字符串,使用join()而不使用+
- 列表进行元素插入和删除,尽量在列表尾部 *** 作。
#绘制不同颜色的多个同心圆 import turtle t=turtle.Pen() my_colors=("red","green","yellow","black") t.width(4) t.speed(10) for i in range(5): #0 1 2 3 4 t.penup() t.goto(0,-i*10) #0 -10 -20 -30 -40 t.pendown() t.color(my_colors[i%len(my_colors)]) t.circle(15+i*10) turtle.done()绘制棋盘
#绘制棋盘 import turtle width=30 num=18 x1=[(-400,400),(-400+width*num,400)] y1=[(-400,400),(-400,400-width*num)] t=turtle.Pen() t.speed(10) #t.goto(x1[0][0],x1[0][1]) #t.goto(x1[1][0],x1[1][1]) for i in range(0,19): t.penup() t.goto(x1[0][0],x1[0][1]-30*i) t.pendown() t.goto(x1[1][0],x1[1][1]-30*i) for i in range(0,19): t.penup() t.goto(y1[0][0]+30*i,y1[0][1]) t.pendown() t.goto(y1[1][0]+30*i,y1[1][1]) turtle.done()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)