【发布时间】:2018-08-30 18:16:10
【问题描述】:
所以我有一个 CSV 文件,其中的列由 : 分隔。它有点像这种格式 User:groupnumber
x:2
y:2
z:4
p:1
q:4
所以组 x 将在该组中有 2 个用户,第 4 组将有 2 个用户,第 1 组将有 1 个用户。
我可以在 perl 中使用什么来执行此操作?我似乎无法弄清楚。我想将它们放入哈希中,但我不知道如何计算许多具有相同值的键。
哈希是最好的方法吗?
【问题讨论】:
所以我有一个 CSV 文件,其中的列由 : 分隔。它有点像这种格式 User:groupnumber
x:2
y:2
z:4
p:1
q:4
所以组 x 将在该组中有 2 个用户,第 4 组将有 2 个用户,第 1 组将有 1 个用户。
我可以在 perl 中使用什么来执行此操作?我似乎无法弄清楚。我想将它们放入哈希中,但我不知道如何计算许多具有相同值的键。
哈希是最好的方法吗?
【问题讨论】:
是的,哈希是正确的数据结构。
#!/usr/bin/perl
use warnings;
use strict;
my %count;
while (<DATA>) {
chomp;
my ($user, $group) = split /:/;
++$count{$group};
}
for my $group (keys %count) {
print "Group $group has $count{$group} members.\n";
}
__DATA__
x:2
y:2
z:4
p:1
q:4
【讨论】: