Skeeve: $_ in Schleifen

Beitrag lesen

Moin!

einfach von anfang an so angewöhnen ... sonst kommen schlimme verwechslungen raus ... wie gesagt sinngemaess :)

Sagen wir mal so: Man sollte wissen, wann man das eine und wann man das andere verwendet.

Die beiden sind nämlich nicht funktionsidentisch wie man hier schön sieht:

#!/usr/bin/perl  
use strict;  
use warnings;  
  
my @anfang=qw/Es war einmal ein Vater/;  
my @ende=qw/so leben sie noch heute/;  
my %zuordnung;  
@zuordnung{@anfang}= @ende;  
  
print "1. ";  
foreach (@anfang) {  
 print " $_";  
}  
print ".\n";  
  
print "1a.";  
foreach my $t (@anfang) {  
 $_= $zuordnung{$t};  
 print " $_";  
}  
print ".\n";  
  
print "2. ";  
foreach (@anfang) {  
 print " $_";  
}  
print ".\n";  
  
print "2a.";  
foreach (@anfang) {  
 $_= $zuordnung{$_};  
 print " $_";  
}  
print ".\n";  
  
print "3. ";  
foreach (@anfang) {  
 print " $_";  
}  
print ".\n";  

Ergebnis:
1.  Es war einmal ein Vater.
1a. so leben sie noch heute.
2.  Es war einmal ein Vater.
2a. so leben sie noch heute.
3.  so leben sie noch heute.

-- Skeeve