perl 数组嵌套入哈希内
这里是指数组作为hash的value,即一个key对应多个值
这里利用perl中的特殊句柄DATA做示例用以备忘{perl 数据结构一旦复杂点,可读性急剧下降,坑🕳}。
demo:
use strict;
use warnings;
my %ha;
while(<DATA>){
chomp;
my @e =split;
my @w = split //,$e[1];
@{$ha{$e[0]}}= (\@e,\@w); #这一行等同于下面注释掉的两行,value是有多个引用的数组
#push(@{$ha{$e[0]}},\@e);
#push(@{$ha{$e[0]}},\@w);
}
foreach my $k(keys %ha){
my @arr = @{$ha{$k}};
print join(":",@{$arr[0]}),"\n";
print join(">",@{$arr[1]}),"\n";
}
__DATA__
1 AGTCAT I
2 AGTCGA J
3 GTCATG K
output:
3:GTCATG:K
G>T>C>A>T>G
2:AGTCGA:J
A>G>T>C>G>A
1:AGTCAT:I
A>G>T>C>A>T
作者:天使不设防
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.