perl push的用法及子程序返回值的反思

pop 操作将数组的最后一个元素取出并返回:

@array=5..9;
$fred=pop(@array); #$fred 得到 9,@array 现在为(5,6,7,8)
$barney=pop@array; #$barneygets8,@array 现在为(5,6,7)
pop@array; #@array 现在为(5,6)(7 被丢弃了)
最后一个例子中,pop 使用在"inavoidcontext",也就是说没有存放其返回值的地方。这样使用 pop 是合法的。

如果数组为空,那 pop 什么也不做(因为没有元素可以移出),并返回 undef。

你可能已注意到 pop 后可以使用或者不使用括号。这在 Perl 中是一条通用规则:如果去掉括号含义不变,那括号就是可选
的◆。和 pop 相反的操作是 push,它可以将一个元素(或者一列元素)加在数组的末尾:
◆受过相应教育的人将发现,这是同义反复。
push(@array,0); #@array 现在为(5,6,0)
push@array,8; #@array 现在为(5,6,0,8)
push@array,1..10; #@array 现在多了 10 个元素
@others=qw/9 0 2 1 0/;
push@array,@others; #@array 现在又多了 5 个元素(共有 19 个)
push 的第一个参数或者 pop 的唯一参数必须是数组变量。

代码如下:

#!/bin/perl
sub above_average 

  $number=@_; 
  foreach $how(@_) 
  { 
     $total=$total+$how; 
  } 
  $the_average=$total/$number; 
  foreach (@_) 
  { 
     if ($_>$the_average) 
     { 
        push(@larger,$_)#这里不用赋值,数组元素的添加,直接用push就好了 
     } 
  } 
  @larger;#子程序的返回值,一定要有,刚开始没有写 

print "please input several numbers,and you will get the number which is large than their average\n"; 
@the_number_input=<STDIN>; 
@the_number_larger=above_average(@the_number_input); 
print "@the_number_larger\n";

(0)

相关推荐

  • perl push的用法及子程序返回值的反思

    pop 操作将数组的最后一个元素取出并返回: @array=5..9; $fred=pop(@array); #$fred 得到 9,@array 现在为(5,6,7,8) $barney=pop@array; #$barneygets8,@array 现在为(5,6,7) pop@array; #@array 现在为(5,6)(7 被丢弃了) 最后一个例子中,pop 使用在"inavoidcontext",也就是说没有存放其返回值的地方.这样使用 pop 是合法的. 如果数组为空,那

  • PHP入门教程之自定义函数用法详解(创建,调用,变量,参数,返回值等)

    本文实例讲述了PHP自定义函数用法.分享给大家供大家参考,具体如下: Demo1.php <?php //标准函数,内置函数 echo md5('123456'); echo '<br/>'; echo sha1('123456'); echo '阅谁问君诵,水落清香浮.'; ?> Demo2.php <?php //创建函数,不要跟系统的内置函数重名 //函数有个特性,必须调用,才可以执行 //无参数表示()里面是空的,无返回就是函数的程序里没有 return functi

  • Python 函数用法简单示例【定义、参数、返回值、函数嵌套】

    本文实例讲述了Python 函数用法.分享给大家供大家参考,具体如下: demo.py(函数定义): # say_hello() # 不能在定义函数之前调用函数 # Python 解释器知道下方定义了一个函数 def say_hello(): """函数的说明文档""" print("hello 1") print("hello 2") print("hello 3") print(&q

  • Ajax返回值类型与用法实例分析

    本文实例讲述了Ajax返回值类型与用法.分享给大家供大家参考,具体如下: Ajax返回值类型主要有XML类型和文本类型,其中文本类型又可以分为HTML.json类型等. 1.返回值之XML类型 如果服务器的响应头中Content-type的内容为text/xml时,此时XMLHttpRequest对象的responseXML属性才能使用. 2.返回值之文本类型 文本类型主要分为Html类型和json类型. (1)Html类型 使用场景:一般返回需要重复复杂的操作.比如,页面使用ajax从服务器请

  • Python函数的返回值、匿名函数lambda、filter函数、map函数、reduce函数用法实例分析

    本文实例讲述了Python函数的返回值.匿名函数lambda.filter函数.map函数.reduce函数用法.分享给大家供大家参考,具体如下: 函数的返回值: 函数一旦执行到   return,函数就会结束,并会返回return 后面的值,如果不使用显式使用return返回,会默认返回None . return None可以简写为   return. def my_add(x,y): z=x+y return z print(my_add(1,2))##打印的是返回值 def my_add_

  • Python中return函数返回值实例用法

    在学习return函数时候,还是要知道了解它最主要的函数作用,比如,怎么去实现返回一个值,另外还有就是我们经常会用到的使用return能够进行多值输出,这才是我们需要抓住知识的重点,针对上述所提及的内容,都可以来往下看文章,答案都在文章内容获取哦~ return 添加返回值 return 显示返回对象 返回值接受:value = func() 例子:计算学成最高分 listv = [90,80,88,77,66] # 分数计算return高分 def scoreCalculate(values)

  • java中关于return返回值的用法详解

    我们输入一个条件时,系统就会对这个条件进行判断,然后给出一个返回时的结论,我们把这个结果看做是返回值.在java里可以使用return语句来进行返回,从字面意思就能很好的理解它的用法了.下面我们就return的有无返回值进行分类展示,同时带来代码的实例分享. 1.定义 return语句可以使其从当前方法中退出,返回到调用该方法的语句处,继续程序的执行. 2.返回语句两种格式 有返回值: (1)return 返回值: (2)return 0 代表程序正常退出, (3)return 1 代表程序异常

  • Vue的export default和带返回值的data()及@符号的用法说明

    目录 export default和带返回值data()及@符号用法 export和export default的使用 export的使用 export default的使用 export default和带返回值data()及@符号用法 一直以来很费解为什么vue组件有的写成export default,有什么用? 声明一个vue,相当于 new Vue({}) 达到可复用的目的,也就是说,export default 相当于导出当前vue组件,在其它引入当前组件时可以使用当前组件中的方法和变

  • javaScript中push函数用法实例分析

    本文实例讲述了javaScript中push函数用法.分享给大家供大家参考.具体分析如下: javaScript 中的 push 方法,将新元素添加到一个数组中,并返回数组的新长度值. arrayObj.push([item1   [item2   [.   .   .   [itemN   ]]]]) 参数 arrayObj,必选项.一个   Array   对象. item,   item2,.   .   .   itemN, 可选项.该   Array   的新元素. 说明 push 

  • jquery中push()的用法(数组添加元素)

    push定义和用法 push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度. 语法 arrayObject.push(newelement1,newelement2,....,newelementX) 参数 描述 newelement1 必需.要添加到数组的第一个元素. newelement2 可选.要添加到数组的第二个元素. newelementX 可选.可添加多个元素. 返回值 把指定的值添加到数组后的新长度. 说明 push() 方法可把它的参数顺序添加到 arrayObjec

随机推荐