gpt4 book ai didi

python - 哪种脚本语言在 perl vs python vs ruby​​ 中表现更好?

转载 作者:太空狗 更新时间:2023-10-29 21:38:19 24 4
gpt4 key购买 nike

<分区>

到目前为止,我一直在用 Perl 编写程序。我决定尝试一下 python,并注意到了一些差异。虽然 perl 内置了 ARGV、regex 等,但这些必须在 python 中导入。我认为这给了 Python 一个性能优势,因为你只加载了你真正需要的东西。

因此,我用每种语言编写了一个演示程序来测试其性能。

Perl

#!/usr/bin/perl

exit(1) if $ARGV[-1] ne 'test';
print "Testing...\n";

my $a = 1.0;
my $i;

for (0 .. 500) { $a+=$a/100; }

printf "Result: %.5f\n", $a;

python

#!/usr/bin/python

from sys import argv

if argv[-1] != 'test':
exit(1)

print 'Testing...'

a = 1.0
for i in range(0, 501):
a+=a/100

print 'Result: %.5f' %a

ruby

#!/usr/bin/ruby

if ARGV[0] != "test"
exit(1)
end

print "Testing...\n"
a = 1.0

(0..500).each do a+=a/100 end

printf "Result: %.5f", a

C

#include <stdio.h>
#include <string.h>

int main (int argc, char *argv[]) {

if (strcmp(argv[1], "test") != 0) return(1);

printf("Testing...\n");

double a = 1.0;
int i;

for (i=0; i <= 500; i++)
a+=a/100;

printf("Result: %.5f\n",a);
return 0;
}

结果是:

Perl

real 0m0.006s
user 0m0.002s
sys 0m0.004s

python

real 0m0.075s
user 0m0.061s
sys 0m0.013s

ruby

real 0m0.017s
user 0m0.008s
sys 0m0.008s

C

real 0m0.003s
user 0m0.001s
sys 0m0.002s

我的测试是否存在某些缺陷?

我读到 python 更适合大型程序 (See here)。那么它会胜过 perl 吗?他们的内存使用情况如何?

我正在编写一些大型应用程序作为守护进程在我的 VPS 上运行,而 VPS 的 RAM 数量有限,因此我的真正目标是尽量减少内存使用量。

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