Правильные цифры в Perl

Как я могу напечатать числа, выровненные по праву в Perl, например:

a=   1
b=  22
c= 333
d=4444  

3 ответа

Попробуй вот так.

printf ("%4d\n",1);
printf ("%4d\n",11);
printf ("%4d\n",111);
printf ("%4d\n",1111);

Официальный ресурс для этого perldoc -f sprintf, который имеет хорошее резюме примеров:

Например:

  printf '<% d>',  12;   # prints "< 12>"
  printf '<%+d>',  12;   # prints "<+12>"
  printf '<%6s>',  12;   # prints "<    12>"
  printf '<%-6s>', 12;   # prints "<12    >"
  printf '<%06s>', 12;   # prints "<000012>"

Использование printf с точностью и пробелом в качестве "наполнителя":

printf "a=% 4d\n", 1;
printf "b=% 4d\n", 22;
Другие вопросы по тегам