Как я могу печатать числа с выравниванием по праву в Perl, например:
a= 1 b= 22 c= 333 d=4444
Попробуй вот так.
printf ("%4d\n",1); printf ("%4d\n",11); printf ("%4d\n",111); printf ("%4d\n",1111);
Официальным ресурсом для этого является perldoc -f sprintf , в котором есть краткое изложение примеров:
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 '<% 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
printf "a=% 4d\n", 1; printf "b=% 4d\n", 22;