shift用法:

#!/usr/bin/perl
sub check_required_items {my $who = shift;print "$who\n";my %who_items = map {$_, 1} @_;my @required = qw(preserver sunserver water_bottle jacket);for my $item (@required) {unless ($who_items{$item}) {print "$who is missing $item.\n";}}
}
my @gilligan = qw(red_shirt hat luc water_bottle);
check_required_items('gilligan',@gilligan);

输入结果:

gilligan

gilligan is missing preserver.

gilligan is missing sunserver.

gilligan is missing jacket.

shift 取数组中第一个变量,并在列表中剔除变量,有点像pop;

转载于:https://blog.51cto.com/luyafei/1218568

学习perl点滴(二)相关推荐

  1. Programming C# 学习笔记(二) 出发:“Hello World”

    小序:      准备写这章的学习笔记了,啊,Hello World!多么亲切的语句,呵呵,当初学C语言的第一个程序就是输出它, 还记得费了好大劲终于把它输出来时候的那种兴奋感觉,真是让我怀念哦!(然 ...

  2. SVO学习笔记(二)

    SVO学习笔记(二) 这篇文章 稀疏图像对齐 地图点投影(地图与当前帧间的关系) reprojectMap reprojectPoint reprojectCell 特征点对齐中的非线性优化 结尾 这 ...

  3. WPF学习拾遗(二)TextBlock换行

    原文:WPF学习拾遗(二)TextBlock换行 下午在帮组里的同事解决一个小问题,为了以后方便,把就把它收集一下吧. 新建一个TextBlock作为最基础的一个控件,他所携带的功能相对于其他的控件要 ...

  4. C++语言学习(十二)——C++语言常见函数调用约定

    C++语言学习(十二)--C++语言常见函数调用约定 一.C++语言函数调用约定简介 C /C++开发中,程序编译没有问题,但链接的时候报告函数不存在,或程序编译和链接都没有错误,但只要调用库中的函数 ...

  5. Spring MVC 学习总结(二)——控制器定义与@RequestMapping详解

    Spring MVC 学习总结(二)--控制器定义与@RequestMapping详解 目录 一.控制器定义 1.1.实现接口Controller定义控制器 1.2.使用注解@Controller定义 ...

  6. Python学习笔记(二):标准流与重定向

    Python学习笔记(二):标准流与重定向 - SamWei - 博客园 Python学习笔记(二):标准流与重定向 Posted on 2012-02-19 22:36 SamWei 阅读(176) ...

  7. Emgu-WPF学习使用-识别二维码的位置

    原文:Emgu-WPF学习使用-识别二维码的位置 参考链接:http://blog.csdn.net/gaobobo138968/article/details/47663607 我完全参照该链接实现 ...

  8. pytorch学习笔记(二):gradien

    pytorch学习笔记(二):gradient 2017年01月21日 11:15:45 阅读数:17030

  9. opencv学习笔记(二):基于肤色的人手检测

    opencv学习笔记(二):基于肤色的人手检测 原文:http://blog.csdn.net/wzmsltw/article/details/50849810 先写了人手的检测程序,下一步基于检测程 ...

  10. Tensorflow深度学习之十二:基础图像处理之二

    Tensorflow深度学习之十二:基础图像处理之二 from:https://blog.csdn.net/davincil/article/details/76598474   首先放出原始图像: ...

最新文章

  1. Cissp-【第1章 安全和风险管理】-2020-12-31(58页-85页)
  2. Nginx 安装配置教程
  3. 直接拖动元器件_电子元器件常规检测和判断
  4. 代码中特殊的注释技术——TODO、FIXME和XXX的用处
  5. java可以转linux么_Java开发必会的Linux命令(转)
  6. 查看oracle中path,查看oracle进程启动时的环境变量
  7. 【java】Applet显示阶乘结果
  8. ubuntu锐捷校园网
  9. uni中的web-view
  10. linux裸设备读写,Linux裸设备管理学习笔记
  11. 小M哥安卓5期视频教程(基础+就业)
  12. idea中 git版本回退
  13. 输入法框无法正常显示问题
  14. 神经网络中单层神经元表示逻辑运算
  15. 每年等额本金,计算复利的方法
  16. 开启 Chrome、Edge 浏览器的多线程下载功能
  17. 修改java环境变量_怎么配置java环境变量
  18. 服务器芯片top10,国内云服务器排名top10
  19. 捷联惯导算法与组合导航原理学习——等效旋转矢量和姿态阵转换(一)
  20. Kotlin 开发Android app(十二):Android布局FrameLayout和ViewPager2控件实现滚动广告栏

热门文章

  1. mysql innodb 分区_MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)
  2. python如何提取json_python实现提取str字符串/json中多级目录下的某个值
  3. 微信公众号网页授权代码优化过程(三)
  4. 微信公众平台开发,图文回复、access_token生成调用、以及微信SDK的实现(2)
  5. SQL 语句与性能之联合查询和联合分类查询
  6. iOS中 百度地图详解
  7. python获取当前路径的方法
  8. C/C++ 输入字符串gets( )、scanf( )、getline( )以及单个字符getchar( )
  9. u8 和 char如何转化_算法:如何实现大正整数相加?
  10. Android篮球计分器App