在perl中使用变量构建数组哈希的哈希?
Builiding a hash of hashes of arrays with variables in perl?
my %cellHash
有不同的键,$cellDirectory
包含所需键的值。
我正在尝试分配一个散列作为当前键的值 ($cellDirectory
)。
该散列只有 2 个键,每个键都有一个不同的数组作为值。
%{ $cellHash{$cellDirectory} } = (
'R1Tests' => \@fastqcResults_R1 ;
'R2Tests' => \@fastqcResults_R2 ;
);
但是,当我尝试 运行 脚本时,returns 这部分代码附近出现语法错误。
我不知道我做错了什么……有什么想法吗?
列表中的分号是问题所在。
%{ $cellHash{$cellDirectory} } = (
R1Tests => \@fastqcResults_R1,
R2Tests => \@fastqcResults_R2,
);
更新:
为了回应评论中的问题,我会这样做。
匿名散列语法(参考文字)将是我的第一选择:
$cellHash{$cellDirectory} = {
R1Tests => \@fastqcResults_R1,
R2Tests => \@fastqcResults_R2,
};
这也是有效的,虽然我不太喜欢它:
my %newHash = (
R1Tests => \@fastqcResults_R1,
R2Tests => \@fastqcResults_R2,
);
$cellHash{$cellDirectory} = \%newHash;
my %cellHash
有不同的键,$cellDirectory
包含所需键的值。
我正在尝试分配一个散列作为当前键的值 ($cellDirectory
)。
该散列只有 2 个键,每个键都有一个不同的数组作为值。
%{ $cellHash{$cellDirectory} } = (
'R1Tests' => \@fastqcResults_R1 ;
'R2Tests' => \@fastqcResults_R2 ;
);
但是,当我尝试 运行 脚本时,returns 这部分代码附近出现语法错误。
我不知道我做错了什么……有什么想法吗?
列表中的分号是问题所在。
%{ $cellHash{$cellDirectory} } = (
R1Tests => \@fastqcResults_R1,
R2Tests => \@fastqcResults_R2,
);
更新:
为了回应评论中的问题,我会这样做。
匿名散列语法(参考文字)将是我的第一选择:
$cellHash{$cellDirectory} = {
R1Tests => \@fastqcResults_R1,
R2Tests => \@fastqcResults_R2,
};
这也是有效的,虽然我不太喜欢它:
my %newHash = (
R1Tests => \@fastqcResults_R1,
R2Tests => \@fastqcResults_R2,
);
$cellHash{$cellDirectory} = \%newHash;