到现在为止,我一直在用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;
Run Code Online (Sandbox Code Playgroud)
蟒蛇
#!/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
Run Code Online (Sandbox Code Playgroud)
红宝石
#!/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
Run Code Online (Sandbox Code Playgroud)
C
#include <stdio.h>
#include <string.h> …Run Code Online (Sandbox Code Playgroud) 在你是设计师和开发人员的单人项目(网页或桌面应用程序)中,首先做什么,设计或编写代码更好?
请考虑以下示例代码.
my $a = "test";
my $b = "stackoverflow";
test("%s - %s\n", $a, $b);
sub test {
my $error = sprintf(@_);
print $error;
}
Run Code Online (Sandbox Code Playgroud)
这打印3而不是格式化的字符串.甚至可以做我正在尝试的事情吗?
打印对数组,哈希等的引用时,括号中的十六进制数是多少?
perl -e 'print []'
Run Code Online (Sandbox Code Playgroud)
给出如下输出:ARRAY(0x9acb830)
什么是0x9acb830?如果我再次打印相同的参考号,则此数字会更改.