gpt4 book ai didi

python - 我可以提高此 Python 代码的性能吗?

转载 作者:行者123 更新时间:2023-11-30 01:16:38 25 4
gpt4 key购买 nike

我用 Python 编写了以下简单循环。它使用浮点加法和乘法对从 0 到 1.0e9 - 1 的整数的平方求和。(这是一个玩具示例,但我相信它代表了我当前正在编写的代码)。

a = 0.0
i = 0.0
while i < 1.0e9:
a += i * i
i += 1.0
print a

在我的机器上,使用 32 位 CPython 2.7.8,运行需要 400 秒。等效的 C++ 代码(如下)运行时间不到 2 秒,等效的 Go 代码运行时间不到 3 秒。

double a = 0.0;
for(double i = 0.0; i < 1.0e9; i += 1.0) {
a += i * i;
}
std::cout << a << std::endl;

由于我的代码需要分发给除了 CPython 之外没有安装任何东西的最终用户,我无法使用 PyPy 或 NumPy 来加速 Python 代码。

我还能做些什么来提高 Python 代码的性能,或者对于算术繁重的工作,CPython 通常会比 C++ 和 Go 慢 100 倍吗?

最佳答案

我的机器比你的慢,所以我还在等待结果...但既然我们在这里讨论平方和,让我们使用一些 maths :

>>> n=1.0e9 - 1
>>> n**3/3 + n**2/2 + n/6
3.3333333283333336e+26

关于python - 我可以提高此 Python 代码的性能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26214646/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com