- 论坛徽章:
- 0
|
看了intermediate perl一书,看了无名数列,看得有点晕,想问一下无名数列和数列中的元素是如何区别的.比如以下的例子
题目是要求把数列中的各元素自身的和是奇数的元素找出来.用grep进行查找
my @input_numbers = (1, 2, 4, 8, 16, 32, 64);
my @indices_of_odd_digit_sums = grep {
my $number = $input_numbers[$_]; #这里的$input_numbers[$_],是无名数列 还是数列@input_numbers下的一个元素,如何区别?
my $sum;
$sum += $_ for slipt //, $number; #从这一句来看$numbers是无名数列里面只含有一个元素$_,然后对这个只有一个元素的数列(),进行分隔,比如16进行分隔后成1和6,用for 先取一个数字1赋值给$_再将它和sum相加所得sum再赋给sum,不知道这样理解对吗?然后下面还有一个例子,那里的$x[$_]和$y[$_]是什么,是@x和@y的一个元素吧,还是无名数列呢?搞不懂???
$sum % 2;
} 0..$#input_numbers;
第二个例子找出@x中比@y中大的元素,
my @bigger_indices = grep {
$_ > $#y or $x[$_] >$y[$_]; #这里的$x[$_]和$y[$_]是什么,是@x和@y的一个元素应该吧?那上面一题的$input_numbers[$_]为什么是无名数列呢?
} 0..$#x;
my @bigger = @x[@bigger_indices];
帮帮忙看看吧,我刚初学编程,希望能得到大家的帮助,谢谢. |
|