0

我有一个格式为 h:mm:ss 的时间数组列表。我想计算这个数组的平均时间。

我尝试了下面的代码,但包有一些问题。我成功安装了 Duration 包,但现在编译器在 Duration::Parse 包上抛出错误。

PS:我使用 Dwinperl 作为 windows 上的编辑器。

use Time::Duration::Parse qw(parse_duration);
use Time::Duration qw(duration);
use List::Util qw(sum);
my $count = @time;
my $sum   = sum map {parse_duration($_) } @time;
my $avg   = $sum / $count;

print duration($sum, 3), "--Total Time\n";
print duration($avg, 3), "--Avg Time\n";

这是我收到的错误消息。

Can't locate Time/Duration/Parse.pm in @INC (@INC contains: C:/Dwimperl/perl/sit
e/lib C:/Dwimperl/perl/vendor/lib C:/Dwimperl/perl/lib .) at time.pl line 7.
BEGIN failed--compilation aborted at time.pl line 7.
4

1 回答 1

1

似乎在@INC路径列表中perl找不到安装的包Time::Duration::Parse

在终端中输入以下命令以检查是否perl可以默认找到您的模块

perldoc -l Time::Duration::Parse

如果上面的命令没有给你所需模块的安装位置,

  1. 确保您已安装所需的模块

  2. 尝试在您的perl代码中添加以下行以添加模块的自定义安装路径

    use lib '/path/to/module';

于 2013-11-02T16:49:21.173 回答