Perl数字格式

edu*_*nez -6 format perl

我如何格式化这个例子:

100000为1000.00

90为0.90

用Perl?

我发现,用像一些模块尝试Locale::Currency::FormatNumber::Format,但没有工作:/

随着Locale::Currency::Format我尝试:

use Locale::Currency::Format;
my $total = 19750;
my $convert = currency_format('USD',$total,'FMT_COMMON');
print $convert;
Run Code Online (Sandbox Code Playgroud)

我预计197.50但是印刷品是"19,750.00美元".

Mar*_*eed 5

my $formatted = sprintf '%.2f', $number/100.0;
Run Code Online (Sandbox Code Playgroud)

在美元,我们数美元,而不是美分.如果你想使用代表便士的整数来避免舍入错误,那就太好了; 良好的做法.但是由你来划分100以获得标准格式的人工清晰输出.

sprintf功能(小号特林打印 ˚F ormatted,最初是从C标准库,现在在许多编程语言中出现)将以多种方式格式化数字.在这种情况下,格式字符串%.2f请求输出小数点后2位数的f loating-point(即十进制,小数,实数,非整数)数.