如何以块的形式打印数组并指定每行打印多少个元素?
#Given
@array = qw/a b c d e f g i j/;
$chr_per_line =3;
Run Code Online (Sandbox Code Playgroud)
输出:
a b c \n
d e f \n
g i j \n
Run Code Online (Sandbox Code Playgroud)
谢谢!
splice我不喜欢使用破坏性的这种东西,而是喜欢使用List :: MoreUtils中的natatime(一次N个)
use List::MoreUtils 'natatime';
my @array = qw/a b c d e f g i j/;
my $iter = natatime 3, @array;
while( my @chunk = $iter->() ) {
print join( ' ', @chunk ), "\n";
}
Run Code Online (Sandbox Code Playgroud)