Python中使用循环的最佳实践是什么?

Python中使用循环的最佳实践是什么?

这是一个语言不限的问题。几乎所有编程语言都有循环语句,同样的原则适用于每一种语言。你需要意识到编译器在处理循环优化方面承担了大部分工作,但是作为一个程序员,你也需要保持循环的优化。

需要注意的是,你在循环中执行的每一个操作都会被执行一遍。优化循环的关键是尽量减少循环中的操作。即使是看起来很快的操作,如果重复执行很多次,也会花费很长时间。如果一个操作每次仅花费1微秒,那么执行一百万次就需要1秒的时间。

不要在循环中或者循环开始之前重复执行类似于len(list)这样的操作。

更多Python相关文章,请阅读:Python 教程

例子

a = [i for i in range(1000000)]
length = len(a)
for i in a:
  print(i - length)
Python

要比

a = [i for i in range(1000000)]
for i in a:
  print(i - len(a))
Python

快的多。

你也可以使用 Loop Unrolling(https://en.wikipedia.org/wiki/Loop_unrolling)等技术,它是一种优化程序执行速度的循环转换技术,以二进制大小为代价,这是一种所谓的时空权衡的方法。

使用像 map、filter 等函数而不是显式的 for 循环也可以提高性能。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册