【发布时间】:2016-08-14 05:18:08
【问题描述】:
我今天遇到了一段不知道如何解释的 Perl 代码。具体来说,$lookup -> {$chr} -> {$start} = $end 行,因为我不确定多个中缀取消引用运算符是如何串联工作的。
输入文件在每一行包含制表符分隔的染色体名称($chr)、起始位置($start)和结束位置($end)。我知道作者正在创建一个哈希表,其中$chr 映射到具有与每个染色体对应的$start 值的数组,但我无法确切确定他在下一行试图完成什么。任何见解将不胜感激。
my $hash;
my $lookup;
if (defined $bed_file) {
open(FILE, $bed_file);
while (my $line = <FILE>) {
chomp $line;
my ($chr, $start, $end) = split(/\t/, $line);
push(@{$hash -> {$chr}}, $start);
$lookup -> {$chr} -> {$start} = $end;
}
close(FILE);
}
【问题讨论】:
标签: perl