Ich habe einen Hash-Array. Wenn ich versuche, sie abzurufen, werden die Werte im Array nicht entsprechend der Reihenfolge der entsprechenden Hash-Schlüssel gedruckt. Ich habe sowohl 'Tie :: IxHash :: Easy' und 'Tie :: Autotie' Tie :: IxHash 'verwendet, um den Hash zu binden.Perl: Abrufen von Hash-Werten in der Reihenfolge, in der sie erstellt wurden
Zum Beispiel:
use strict;
use warnings;
use Tie::IxHash::Easy;
tie my %idAlignment, 'Tie::IxHash::Easy';
@{$idAlignment{1}{r1}} = qw/4032.82 4145.04 4519.05 4527.46 5144.13/;
@{$idAlignment{1}{t1}} = qw/4032.86 4144.92 4519.11 - -/;
printAlnCols($idAlignment{1},0);
sub printAlnCols{
my($alnRef,$colIndex)[email protected]_;
my %Aln=%{$alnRef};
foreach my $k(keys %Aln){
print $Aln{$k}[$colIndex],"\n";;
}
}
Das Skript druckt 4032,86 und 4032,82, während ich es erwarte von 4.032,86 4.032,82 gefolgt zu drucken, wie die $ idAlignment {1} {r 1}} vor $ idAlignment erstellt wurde {1} {t1}.
Vielen Dank im Voraus
Vielen Dank !!! Gibt es dafür ein Perl-Modul? –
Was möchten Sie hier erreichen? Ich meine, ein Ansatz besteht darin, ein Array von Schlüsseln zu verwenden (oder zu sortieren), wenn Sie etwas tun, das geordnet werden muss. – Sobrique