加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl中的数组操作

发布时间:2020-12-16 00:35:11 所属栏目:大数据 来源:网络整理
导读:Push 返回数组中的个数 pop 返回数组中被Pop出的数,最后一个 shift 返回数据中删除的数字,第一个 unshift 返回数组长度,从第一个添加 print join(':',unshift(@numbers,10)); Map 1.? 会遍历整个数组,并对数组的每个值调用函数,例如 map uc,@word, 输出

Push

返回数组中的个数


pop

返回数组中被Pop出的数,最后一个


shift

返回数据中删除的数字,第一个


unshift

返回数组长度,从第一个添加

print join(':',unshift(@numbers,10));


Map

1.? 会遍历整个数组,并对数组的每个值调用函数,例如

map uc,@word,

输出全大写

2.? $_ 表示数组的每一个值 ,例如

@word? = qw(a b c d e f g);

print? map{$_}@word?
等同于

print? @word

3. 如何获得数组的下标

print? map{$_} 0...$#word?? 这里 $#word 表示数组word最后一个元素的下标值。即g的下标=6

输出为 0123456

这里因为{}后面的是0...$#word,表示下标,所以$_也为下标, 如果是{}后面是@word,那么$_就是@word中的元素


4,?? 将数据转换为hash

%hash = map{$_+100,word[$_]}0...$#word

print join(':',%hash);

输出为1:a:2:b....6:g


如果print $hash{3};

输出为c

可以用于查找



5? 利用map连续调用某一函数

@array = (0...9,a...z,A...Z);

print join('',map{$array[int(rand(@array))]}0...7);


rand - 生成随机数的函数

rand(@array)? - 这里的@array 返回数组的长度 = $#array+1?,rand(@array)返回一个小于数组长度的浮点数

int(rand(@array)) 转换为整型


map{$array[int(rand(@array))]}0...7?? 0...7表示执行8次,返回了一个由字母和数字组成的随机数

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读