燈明ブログ

現状は小池啓仁の応援ブログ

配列のprint表示を見やすくするには

普通、配列をprintすると要素がくっ付いて表示され、どこまでが要素データかわかりません。
以下の一行を先頭の方に入れると、それを見やすくすることが出来ます。

local ($, , $\) = (', ', "\n");

解説

  • 「$,」は、print関数が出力フィールドの間に挟み込むセパレータ(上の例では、要素毎の間に「, 」が入る)
  • 「$\」は、print関数が出力レコードの末尾に追加するセパレータ(上の例では、一行毎に改行が入る)

ちなみに、「$/」は、入力レコードセパレータで、デフォルトは改行で、これにundefを代入するとファイル入力時にファイル全体を読み込むことができる。

サンプル(From DanScript)

use strict;
use warnings;

local ($, , $\) = (', ', "\n");
my @array = (0..6);
print @array;
for my $i (@array) { $i++ };
print @array;
C:\test>perl dan01.pl
0, 1, 2, 3, 4, 5, 6
1, 2, 3, 4, 5, 6, 7