Thread Aus 2 Arrays die keys und values eines Hash machen (5 answers)
Opened by bianca at 2010-01-02 16:45

pq
 2010-01-02 17:37
#143971 #143971
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
2011-01-02T15:45:43 bianca
Geht dies hier auch einzeilig/eleganter

sagen wir so, es ist wirklich keine kunst, das eleganter hinzukriegen. sieht ein bisschen aus wie java-oder c-code in perl gepresst.
wozu die c-style-for-loop?
du hast hier mittlerweile über 2000 beiträge im forum, und eine schleife der art
foreach my $z (0 .. $#array)
ist dir sicher schonmal begegnet.
trotzdem verwendest du
foreach (my $z = 0; $z < @array; $z++)
wird also langsam al zeit, perl zu programmieren.

und hier das eigentliche problem abstrahiert:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
my @names = qw/ foo bar baz /;
my @values = (1,2,3);

my %hash;
@hash{ @names } = @values;

use Data::Dumper;
print Dumper \%hash;
__END__
$VAR1 = {
          'bar' => 2,
          'baz' => 3,
          'foo' => 1
        };


ziemlich simpel also, oder?
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Antworten mit Zitat

View full thread Aus 2 Arrays die keys und values eines Hash machen