python 与golang的简单性能对比

1,492 阅读1分钟

golang号称速度很快,速度几乎可以和c媲美,而且使用起来和Python差不多简单 我们接下来就简单对比一下,这里对比的十分粗狂,就只对比加法

python:


import time

def add(x1,x2):
    return x1+x2

if __name__ == '__main__':
    a=1
    b=2
    count=10
    res=[]
    for i in  range(count):
        start=time.time()
        for j in range(10000000):
            add(a,b)
        res.append(time.time()-start)
    print(res)

运行结果:

[3.5068740844726562, 3.3987174034118652, 3.778928279876709, 4.0115180015563965, 3.933300256729126, 4.767098426818848, 4.4921875, 4.021092176437378, 4.516972303390503, 4.017354965209961]

速度差不多是3-4秒

我们再来看看go

golang

package main

import (
   "fmt"
   "time"

)

func add(x1 int,x2 int) int {
   return x1+x2
}

func main()  {
   a:=1
   b:=2
   //计算10次取平均值
   const count=10
   var ts[count] time.Duration
   //var ts[count] int64
   for j:=0;j<count;j++ {
      start:=time.Now()
      //fmt.Println(start)
      for i:=0;i<10000000;i++{
         add(a,b)
      }
      ts[j]=time.Now().Sub(start)
      //ts[j]=time.Now().Unix()-start
   }
   fmt.Println(ts)

}

运行结果如下:

[4.6786ms 5.0113ms 4.8835ms 4.3992ms 4.4395ms 4.5499ms 5.0585ms 4.9878ms 4.018ms 4.9864ms]

我们可以看到,golang在加法运算快python接近1000倍,执行效率是真的夸张

注:这里使用的配置都是一台电脑,配置为Intel(R) Core(TM) i5-8265U CPU @ 1.60GHz 1.80 GHz