相关疑难解决方法(0)

将python与c/fortran进行比较

我编写了以下程序来比较python与c/fortran的速度.为了获得程序使用的时间,我使用了"time"命令.所有程序计算x x + y y + z*z的平方根,其中x,y,z是浮点数.我使用了根方,因为它是科学计算中最耗时的部分之一,我参与其中.

我得到以下几次:

fortran  0m29.9s //
c        0m20.7s //
python  30m10.8s
Run Code Online (Sandbox Code Playgroud)

根据我做的简单测试,我发现Python不推荐用于科学计算.但可能我的代码效率很低.

您是否认为我可以为这个简单的测试用例提高代码效率?

Fortran语言:

program root_square
implicit none

integer i,j
real x,y,z,r

x=1.0
y=2.0
z=3.0

do j=1,3000
    do i=1,1000000
        r=sqrt(x*x+y*y+z*z)
    enddo
enddo

end program root_square
Run Code Online (Sandbox Code Playgroud)

C:

#include "stdio.h"
#include "math.h"

int main (void)
{

float x=1.0,y=2.0,z=3.0,r;
int i,j;

for(j=0; j<3000; j++){
        for(i=0; i<1000000; i++) {
                r=sqrt(x*x+y*y+z*z);
        }
}

return 0;
}
Run Code Online (Sandbox Code Playgroud)

蟒蛇:

#!/usr/bin/env python

from math import sqrt

x = 1.0
y = 2.0
z …
Run Code Online (Sandbox Code Playgroud)

c python performance fortran

12
推荐指数
2
解决办法
7761
查看次数

标签 统计

c ×1

fortran ×1

performance ×1

python ×1