读书人

perl语言while和foreach的区别

发布时间: 2013-04-20 19:43:01 作者: rapoo

求助:perl语言while和foreach的区别
求助各位大神,perl入门学习中,以下代码分别用了foreach和while,为什么while各种无法达到要求呢?
#!/usr/perl/bin/perl
print "Please enter the name of person you known(enter ctral z to quit):\n";
my %person_hash = (
'lucy' => 'qian',
'tina' => 'qi',
'lily' => 'zhang',
);
chomp(@name = <STDIN>);
print "name\t\tsurname\n";
foreach(@name) #若是此处使用while,程序无结果...
{print "$_\t\t $person_hash{$_}\n";} perl 菜鸟求助
[解决办法]
帮格式化。

#!/usr/perl/bin/perl
print "Please enter the name of person you known(enter ctral z to quit):\n";
my %person_hash = (
'lucy' => 'qian',
'tina' => 'qi',
'lily' => 'zhang',
);
my @name;
chomp( @name = <STDIN> );
print "name\t\tsurname\n";
while( @name ) #若是此处使用while,程序无结果...
{
print "$_\t\t $person_hash{$_}\n";
}

这就是两个不相同的关键字,C 语言里的 for 和 while 也不能替换着用吧?
[解决办法]
while EXPR
for LIST
foreach LIST

读书人网 >perl python

热点推荐