美文网首页
PHP和Python谁更快

PHP和Python谁更快

作者: xhat | 来源:发表于2016-02-14 00:03 被阅读2989次

    废话不多说,亮代码。
    python执行

      1 import re
      2 import urllib
      3 import time
      4
      5 start = time.clock()
      6 for i in range(1,100000):
      7     z = i+1
      8 print z
      9 end = time.clock()
     10
     11 print (end-start)
    

    耗时:0.011912s
    PHP执行

      1 <?php
      2 $z = 0;
      3 $t1 = microtime(true);
      4 for ($i=0; $i < 100000; $i++) {
      5     $z = $z+1;
      6 }
      7 $t2 = microtime(true);
      8 echo $t2-$t1;
      9 ?>
    

    耗时:0.002054s
    结论:PHP效率完胜Python。
    且慢,这就完了么,不然。python机制和PHP不同,处理数字时会对-5-100的数字进行cache,建立所有数字对象,所以会慢,这个代码显然对python不公平。换成正则代码,正则是爬虫最常用的,这个正式python的强项,同样的算法,看一下效果如何。简单起见,用变量$html或html表示已经获取到的html代码(http://tieba.baidu.com/p/2460150866)。
    Python

     15 start = time.clock()
     16 reg = r'src="(.+?\.jpg)" pic_ext'
     17 imgre = re.compile(reg)
     18 imglist = re.findall(imgre,html)
     19 end = time.clock()
     20 print (end-start)
    

    执行耗时0.004s
    PHP

     48 $t1 = microtime(true);
     49 preg_match_all("/src=\"(.*?).jpg\"/i", $html ,$title);
     50 $t2 = microtime(true);
    

    执行耗时0.002s

    效率可见。但只这样来下结论未免草率,可能还有很多算法中python的处理要优于PHP,但我们普通的需求,还不足以去比拼由各语言特性所受影响的深层算法。
    所以开始写爬虫还是用PHP进行来的比较快,免去了python的学习成本,效率并不比python差。

    相关文章

      网友评论

          本文标题:PHP和Python谁更快

          本文链接:https://www.haomeiwen.com/subject/jgnukttx.html