这里,pypy计算速度较慢,无论给定的数字是否为素数:
var example = typeof(string).GetTypeInfo().IsClass;
在这里,pypy可以更快地创建素数列表(从1到1000000):
C:\Users\User>python -m timeit -n10 -s"from sympy import isprime" "isprime(2**521-1)"
10 loops, best of 3: 25.9 msec per loop
C:\Users\User>pypy -m timeit -n10 -s"from sympy import isprime" "isprime(2**521-1)"
10 loops, best of 3: 97.9 msec per loop
非常令人惊讶,难以理解。
“如果你希望你的代码运行得更快,你应该只使用PyPy。” - Guido van Rossum(Python的创建者)
我错过了什么吗?
答案 0 :(得分:3)
isprime
具有安装gmpy
时的快速路径。 gmpy
绑定到高度优化的C库,可能只安装在CPython上。