perl中的默认变量与Z/map介绍
use v6;
=begin pod @*ARGS 命令行参数, 不含脚本名
$*PROGRAM-NAME:当前运行脚本的相对路径
$*PROGRAM:当前运行脚本的文件名称
$*CWD:当前工作路径
$*IN:标准输入流(STDIN),你可以使用$*IN.get来读取其中的一行
$*PID:当前进程PID
$*EXECUTABLE-NAME:运行当前脚本的二进制文件名称
$*EXECUTABLE:运行当前脚本的二进制文件的绝对路径
$*TMPDIR:用于存放临时文件的绝对路径
$_ 默认内置变量, 可用$^value_name代替 =end pod for @*ARGS -> $name {
say $name;
} for 1..10 {say $_;}
for 'a'..'z' {say $^char;} #for中编历数组时可以多个值
for 1..6 -> $one, $two {say $one, ' - ',$two;}
#参数不够时可以用可选参数
for 1..7 -> $one, $two? {say $one, ' - ',$two;}
#如果要从多个数组中编历, 可以用 Z
my @one = 1..6;
my @two = 'a'..'f';
for @one Z @two -> $one, $two {say $one, $two;}
for @one Z @two -> ($one, $two) {say $one, $two;}
#注意上面加括号与不加的区别
#不加括号是, 一个参数里面取值为两个数组一边一个
#加括号时, 参数个数要与数组个数对应
@one.append('7');
for @one Z @two -> $one, $two, $three? {say $one, $two, $three;} #map当函数用
my @mapdata = 1..5;
my @map_f = map {$_ * 2}, @mapdata;
say @map_f; my @map_end = @mapdata.map( -> $name { $name+10});
say @map_end;
perl中的默认变量与Z/map介绍的更多相关文章
- Perl中的特殊内置变量详解
#!/usr/bin/perl -w @array = qw(a b c d); foreach (@array) { print $_," "; } 例子的作用就是定义一个数组并 ...
- Perl中的匹配(六)
在Perl中,匹配的定界符如果是双斜线//,可以直接使用双斜线完成匹配操作. 如果特定条件下需要改变定界符,如改为{},[]等.需要加入m,m{},m[]等. m%^http://% 默认的模式匹配对 ...
- Perl中的执行上下文
perl中的上下文 在perl中,很多地方会切换上下文.所谓上下文,它的重点在于同一个表达式出现在不同地方,得到的结果不同.换句话说,同一个表达式,它表达的值不是固定的.这就像是同一个单词,在不同语境 ...
- perl学习之六:变量作用域
变量作用域 (一)包变量 $x = 1 这里,$x是个包变量.关于包变量,有2件重要的事情要了解: 1)假如没有其他申明,变量就是包变量:2)包变量总是全局的. 全局意味着包变量在每个程序里总可访问到 ...
- Perl中的正则表达式
转自:http://c20031776.blog.163.com/blog/static/684716252013624383887/ Perl 程序中,正则表达式有三种存在形式 分别是 (1 模式匹 ...
- Perl中的替换(七)
在Perl中使用s///进行替换操作,与m//进行查找操作类似. s/with (\w+)/against $1's team/; ##第一个双斜线,表示被替代的文本.第二个双斜线,表示将替 ...
- 在 Perl 中使用 Getopt::Long 模块来接收用户命令行参数
我们在linux常常用到一个程序需要加入参数,现在了解一下 perl 中的有关控制参数的模块 Getopt::Long ,比直接使用 @ARGV 的数组强大多了.我想大家知道在 Linux 中有的参数 ...
- Perl中的hash类型
hash类型 hash类型也称为字典.关联数组.映射(map)等等,其实它们都是同一种东西:键值对.每一个Key对应一个Value. hash会将key/value散列后,按序放进hash桶.散列后的 ...
- perl选项、特殊变量、一些函数参考手册
perl一行式程序系列文章:Perl一行式 本文用来收集Perl一行式中涉及到的一些选项.特殊变量的说明,可以用来做速查手册. 本文会逐渐更新. 第一次学Perl一行式时,请直接忽略本文内容,并直接从 ...
随机推荐
- QT分析之消息事件机制
原文地址:http://blog.163.com/net_worm/blog/static/127702419201001432028526/ 上回我们分析到QPushButton的初始化,知道了Wi ...
- 【Python】PYTHON中STRIP()方法学习笔记
Python strip() 方法用于移除字符串头尾指定的字符(默认为空格). 当使用strip('xxx'),只要字符串头尾有"xxx"中的一个,就会去掉,而不是符合字符串''x ...
- html dom与javascript的关系 -我们用JavaScript对网页(HTML)进行的所有操作都是通过DOM进行的
一,什么是DOM (参考源http://www.cnblogs.com/chaogex/p/3959723.html) DOM是什么 DOM全称为The Document Object Model,应 ...
- Dom-直接 /间接选择器
Dom:Document Object Model的缩写, 把html转换成了文本对象. 1. 直接选择器 1.直接查找 document.getElementById 根据ID获取一个标签 docu ...
- monitor_guiagent
monitor_guiagent monitor_guiagent.sh #!/usr/bin/env bash #filename : monitor_guiagent.sh #Usage: /us ...
- 【题解】NOIP2015推销员
……普及组的题目都做不出来……(:´д`)ゞ……再这样下去要退役了啊…… 不过不管怎样感觉这题还是蛮好的,也要记录一下下~ 我们注意到数据的范围,n 是 1e5, 又有 1e5组询问,暴力大概是 \( ...
- BZOJ1503:[NOI2004]郁闷的出纳员——题解
http://www.lydsy.com/JudgeOnline/problem.php?id=1503 (题面复制的洛谷的,因为洛谷好看) 题目描述 OIER公司是一家大型专业化软件公司,有着数以万 ...
- javascript实现deepEqual和shallowEqual
function deepEqual(x, y) { if (x === y) { return true; } if (!(typeof x == "object" && ...
- React的this.props.children
this.props用来获取组件从外部传入的属性,但是this.props.children比较特殊,它是由React给添加上的,表示组件的所有子节点.this.props.children可以用来读 ...
- HashMap & SparseArray & ArrayMap 简单说明
HashMap 使用有限一维拉链数组存储结构,鉴于所用Entry结构{key, value, nextExtry},Key的hash值用于取余获得所属的数组行下标,通过链表方式顺序存放所有余数相同的各 ...