Thread Syntax Zugriff Array Index
(23 answers)
Opened by bianca at 2019-08-11 08:23 2019-08-11T07:16:00 bianca Es lohnt sich für solche Fälle in jedem Fall, sich mit der Funktion perlfunc map vertraut zu machen, die FIFO ins Rennen gebracht hat. Mit der kann man sowohl Hashes als auch Arrays ohne mehrzeilige Schleife in einem Rutsch verarbeiten: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #!/usr/bin/perl use strict; use warnings; my @stats = (['RequestsA',0],['RequestsB',0],['RequestsC',0],['RequestsD',0],['RequestsE',0]); # Direkt als assoziative Datenstruktur (in Perl ein "Hash") my %stats = ( RequestsA => 0, RequestsB => 0, RequestsC => 0, RequestsD => 0, RequestsE => 0); # Konversionen zwischen den beiden %stats = map { @$_ } @stats; @stats = map { [ $_, $stats{$_} ] } keys %stats; # !! siehe unten # Initialisieren des Hash in einem Aufwasch (alle Elemente auf 0) %stats = map { $_ => 0 } (qw(RequestsA RequestsB RequestsC RequestsD RequestsE)); # und dann anstelle der $idx-Methode einfach nur: $stats{RequestsD}++; Drei Dinge muss man bei assoziativen Datenstrukturen beachten:
|