python和php的文本处理速度对比

运行环境:

PHP 5.4.17

Python 2.6.6

linux 64位


一、逐行读取数据文件,用tab键做分隔处理

split.py 

#!/usr/bin/python
#coding=utf-8

import sys

if len(sys.argv) != 2:
        print sys.argv[0]+" [in_file]\n逐行读取数据,做'\\t'分隔"
        exit()


in_file = sys.argv[1]

n = 0
for row in open(in_file):
        temp = row.split('\t')
        n += 1

print n
split.php
<?php

if (count($argv) != 2) {
        echo $argv[0]," [in_file]\n逐行读取文件,然后‘\\t’分隔";
        exit;
}

$in_file = $argv[1];

$fp = fopen($in_file, 'r');

$n = 0;
while(($row=fgets($fp, 4096))!==false){
        $arr = explode("\t", $row);
        ++$n;
}

echo $n;

执行速度对比

[root@localhost php_py]# time python split.py data.txt 
730408

real	0m1.705s
user	0m1.605s
sys	0m0.093s
[root@localhost php_py]# time php split.php data.txt 
730408
real	0m3.261s
user	0m3.144s
sys	0m0.111s


猜你喜欢

转载自blog.csdn.net/tsxw24/article/details/9930071