次のコードがあります。
my @some_range = (6..10);
my @some_range_new = map(sprintf("I%03d ", $_), \@some_range);
say join(' ', @some_range_new)
出力は次のようになると思います。
I006 I007 I008 I009 I010
しかし、代わりに私は得る:
275738152
なんで?
注:できることはわかっていますがmy @some_range_new = ("I006".."I010")
、 map を と組み合わせて使用する方法を学ぼうとしています。sprintf