将整数转换为十进制Perl

时间:2017-11-10 14:13:28

标签: perl

我需要转换以下整数数字

29900
17940
1

以十进制格式,如

299.00
179.40
0.01

我已经尝试了Data / Types.pm但是 to_decimal(1,2) 返回1.00

1 个答案:

答案 0 :(得分:12)

Perl没有整数,浮点数或字符串意义上的数据类型。您需要做的就是除以100.如果您想要一个带有两位小数的输出,请使用sprintf对其进行格式化。

printf '%.02d', 29900 / 100;

输出299.00。请注意,printfsprintf类似,但需要打印而不是返回。

您可以阅读perldata了解有关Perl所拥有的种数据的更多信息。

在XS和C层的引擎盖下,当然有数据类型。您可以在perlguts中了解它们。但更高级语言的重点是将这些东西抽象出来。因此,如果您所做的只是编写Perl代码,那么您永远不需要关心那些存在或它们是如何工作的。