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

打卡11:perl 数组

发布时间:2020-12-15 23:56:55 所属栏目:大数据 来源:网络整理
导读:1??列表就是数组 2? 用 读取了下一行 perl -ne 'print scalar if /Subject/' ? email2.txt 这个等于$a=。标量读取,所以一定是一行 为什么加上n不对呢 perl -ne 'print if /Subject/' ?这个不是读取一行. 这个等于@a=。数组读取,所以一定是多行 所以n从wc -

1??列表就是数组
2?

用<> 读取了下一行
perl -ne 'print scalar <> if /Subject/' ? email2.txt
这个等于$a=<>。标量读取,所以一定是一行
为什么加上n不对呢
perl -ne 'print <> if /Subject/' ?这个不是读取一行.
这个等于@a=<>。数组读取,所以一定是多行
所以n从wc -l中算出,行不是1,所以继续循环,但是已经读不出东西来了,所以block

3?
while (<>) {
? ? ? ? push (@a,"$_");
}
#easy print array
print @a[-10..-1];
不能循环即可输出一段数组,用负值输出数组

4?
perl -pe '@A=<> ; print @A[-10..-1]' 4.txt
perl 数组的灵活性。可以范围指定(..)。可以从后向前指定,指定后面的。不用知道长度
#easy print array,don;t need loop

5

@line = ""就是相当于@line = qw("");
@line= 6*7; 只有一个标量的数组

6

数组输出和数组长度输出
$f="@d" ;
$f=@d;是标量上下文。数组长度
“@d”这个不是;“”有解析的字符串的意思
“”是转换成字符串 如果是数组, 就会输出数组,然后变成字符串

7

#!/opt/exp/bin/perl -w

my @array1 = (10,20,30,40,50);
my @array2 = ( 1,2,@array1,3,4);
#add "" to add space 10 20 30 40 50
print "@array1";

为每个元素加n,用点符号连接
8?

?数组和列表如何转化:split/joint

9

两个数组,和并成一个数组 push (@a,@b);

(编辑:李大同)

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

    推荐文章
      热点阅读