18.7. 小结

Python

18.7. 小结

这一章展示了性能优化的几个重要方面,这里是就 Python 而言,但它们却普遍使用。

  • 如果你要在正则表达式和编写循环间抉择,选择正则表达式。 正则表达式因其是以 C 语言编译的可以本能地在你的计算机上运行,你的循环却以 Python 编写需要通过 Python 解释器运行。
  • 如果你需要在正则表达式和字符串方法间抉择,选择字符串方法。 它们都是以 C 编译的,所以选取简单的。
  • 字典查找的通常应用很快,但是 string.maketrans 之类的特殊函数和 isalpha() 之类的字符串方法更快。如果 Python 有定制方法给你用,就使它吧!
  • 别太聪明了。 有时一些明显的算法是最快的。
  • 不要太迷恋性能优化,性能并不是一切。

最后一点太重要了,这章中你令这个程序三倍的提速并且另百万次的调用节省 20 秒。 太棒了! 现在思考一下:在那百万次的函数调用中,有多少秒花在周边应用程序等待数据连结上?花在磁盘输入/输出上?花在等待用户输入上? 不要在过度优化算法上花时间,从而忽略了其它地方可以做的明显改进。 开发你编写运行良好的 Python 代码的直觉,如果发现明显的失误则修正它们,并不对其它部分过分操作。

<< 优化字符串操作
 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 

进一步阅读 >>