perl打印数字范围,最后有换行符

时间:2017-04-28 04:38:46

标签: perl

我试图用perl打印1到10。

print 1..10 #This works perfectly fine.

我想知道在打印最后一个元素后是否有办法添加新行。

print "1..10" . "\n" ; # it just  prints 1..10 (as expected) instead of 12345678910

print "{1..10} . "\n" ; # This doesn't work either :(

我知道我可以将它存储在列表中,然后打印列表:

my @test = 1..10 ;

print @test ;

我只是想知道是否有一个打印技巧在1行中完成。 提前谢谢!

1 个答案:

答案 0 :(得分:2)

要将10个数字和换行符传递给print(将依次打印每个),您可以使用以下内容:

print 1..10, "\n";

如果您想要构建一个由数字后跟换行符组成的字符串,则可以使用以下任一项:

print join("", 1..10, "\n");

print join("", 1..10) . "\n";

测试:

$ perl -e'
   print 1..10, "\n";
   print join("", 1..10, "\n");
   print join("", 1..10) . "\n";
   print "done.\n";
'
12345678910
12345678910
12345678910
done.