Python性能测试:timeit模块的使用与分析
1. 不同Python版本和代码的基础性能测试
使用 timeit
模块对不同Python版本(CPython 2.7、CPython 3.3、PyPy)和不同代码进行了性能测试,以下是部分测试结果:
| Python版本 | 代码 | 最佳循环时间(1000次循环) |
| — | — | — |
| CPython 3.3 | [x ** 2 for x in range(1000)]
| 70.6 usec per loop |
| PyPy | [x ** 2 for x in range(1000)]
| 5.44 usec per loop |
| CPython 3.3 | [abs(x) for x in range(10000)]
| 815 usec per loop |
| CPython 2.7 | [abs(x) for x in range(10000)]
| 700 usec per loop |
| PyPy | [abs(x) for x in range(10000)]
| 61.7 usec per loop |
从这些结果可以看出,在大多数情况下,CPython 2.7比CPython 3.3快,而PyPy比两者都明显更快。不过在某些测试中,如最后一个测试,PyPy比CPython慢两倍,可能是由于内存管理的差异。