perl语言入门总结-第3章-列表与数组

1-列表list指的是标题的有序集合, 而数组(array)则是存储列表的变量。

更精确地说,列表指的是数据,而数组指的是变量。

访问数组中的元素

$fred[0] = "yabba";
$fred[1] = "dabba";
$fred[2] = "doo";

$number = 2.71111;
print $fred[$number-1]; #dabba  如果下标不是整数,会舍去小数。
print $fred[145] #如果不存在下标则返回 undef

特殊数组索引, 获得最后一个元素

$rocks[0] = "one";
$rock[99] = ‘last‘;
print $rock[$#rock] ; #last
print $rock[-1]; #last

列表直接量

(1,2,3)  (1,2,3,)  ("friend",11)  () (1..100)
(1.7..5.7) (5..1)空列表 (0,2..6,10,12)
("fred", "barrbey"m "wilma")

qw简写

qw(fred barrbey wilma)

qw允许使用任何标点符号作为定界符。

qw/ fred barney betty /   #可以用反斜杠\转义定义符

列表的赋值

($fred, $barney, $dino) = (‘a‘, ‘b‘,‘c‘);
print $barney; #结果为b

($a,$b)=($b,$a); #a,b两个变量值交换 

数组变量赋值及简写

($rocks[0], $rocks[1], $rocks[2]) = qw/a b c/;
@rocks = qw/a b c/; #上面方法的简写

数组操作

@a =qw/a b/;
@b =(@a, "c", ‘d‘); #a,b,c,d

pop与push操作, 操作的是最右端

@array = 5..8;
$array1 = pop(@array); #会从array中移除最后一元素元素8,返回8
push @array, 100; #向后加100

shift和unshift操作符, 操作的是最左端

@array = qw# a b c d #;
$m = shift(@array); #@array值为(b,c,d)
unshift(@array, 100); #向前加入100即(100,b,c,d)

原文地址:https://www.cnblogs.com/qinzb/p/9175558.html

时间: 2024-10-08 15:31:26

perl语言入门总结-第3章-列表与数组的相关文章

Perl语言入门:第六章习题:处理用户所指定的名字并汇报相应的姓。

37 print "\n----------------------------------_exercise_6_1--------------------------\n";     38 my %bless_function = ( #hash may be a lexical variable     39    "constructors" => "default_values",     40    "error_ha

perl语言入门总结-第4章-子程序

子程序定义和返回值 sub sum{ print "调用了子程序\n"; $a + $b; #后一行为返回值 } $a=1; $b=33; $s =∑ #34 调用子程序 子程序中的参数,参数固定(下面例子只能2参数),程序第一个参数为$_[0],第二个为$[1],依次类推 sub max { if($_[0] > $_[1] ){ $_[0]; }else{ $_[1]; } } $n = & max(10,15); #结果为15 子程序中私有变量 sub max {

perl语言入门总结-第2章

$what ='steak'; print "fred ate $n ${what}s.\n"; 布尔值 如果是数字0为假, 如果是空字符串''为假, 如果即不是数字也不是字符串,那就先转成数字或字符串再行判断. 字符串'0'也为假 获取用户输入 $line = <STDIN>; 去除最右边换行 $text ="a line \n"; chomp($text); print $text; undef值 如果是数据相当undef值为0, 如果与字符串相加则

Perl语言入门(中文版)(第6版) 东南大学出版社

第一章简介 问题与答案 这本书适合你吗? 为何有这么多的脚注? 关于习题和解答? 习题前标的数字是什么意思? 如果我是Perl讲师? “Perl”这个词表示什么意思? Larry为什么要创造Perl? Larry干吗不用其他语言? Perl算容易,还是算难? Perl怎么会这么流行? 现在的Perl发展得怎么样了? 哪些事情最适合用Perl来做? 哪些事情不适合用Perl来做? 如何取得Perl? CPAN是什么? 如何得到Perl的技术支持? 还有别的技术支持方式吗? 如果发现Perl有bug

perl简洁编程,《Perl语言入门(第五版)》读书笔记

整理一下好多年前放在hi.baidu上的笔记! perl简洁编程,<Perl语言入门(第五版)>读书笔记20110316! 书很早就买了,简单翻翻就扔下了!最近买了ipad,良好的阅读体验,用来看书,感觉书又能看进去了!不能白看一遍,整理一下阅读笔记! Perl的程序竟能如此简洁!!! sub division  {     $_[0]/$_[1]; } $_即为接收的数组,同时数据运算后,直接返回,省略了return. sub max {    my($max_so_far)  =  shi

&lt;&lt;Python基础教程&gt;&gt;学习笔记 | 第02章 | 列表和数组

第02章: 列表和数组 ------ 在Python中最基本的数据结构是序列,每个元素分配一个序号,即元素的序号,也即索引.注意,需要从0开始,第一位0,第二位为1,依次类推. Python包括: 字符串,列表,元祖,字典 这四种常用数据结构,或者说四种序列,其中元祖为不可变序列. 列表和元祖的主要区别 列表可变,而元祖不可变             >>>list1 = ['Tom',40] 所以元祖: 主要用于存储不变的数据   >>> >>> t

perl5 第四章 列表和数组变量

第四章 列表和数组变量 by flamephoenix 一.列表二.数组--列表的存贮  1.数组的存取  2.字符串中的方括号和变量替换   3.列表范围  4.数组的输出  5.列表/数组的长度  6.子数组  7.有关数组的库函数 一.列表  列表是包含在括号里的一序列的值,可以为任何数值,也可为空,如:(1, 5.3 , "hello" , 2),空列表:().  注:只含有一个数值的列表(如:(43.2) )与该数值本身(即:43.2 )是不同的,但它们可以互相转化或赋值. 

Perl语言入门:第九章 示例程序和代码

#! /usr/bin/perl use strict; use warnings; print "\n----------------------------------_substitutions_with_s///--------------------------\n";$_ = "He's out bowling with Barney tonight.";s/Barney/Fred/;print $_."\n";s/filehandl

Perl语言入门--3--文件读取与写入

现有文件test.txt,内容为:"123\n456" 1,打开文本test.txt #!/usr/bin/perl open d,"test.txt"; d 为文件句柄,指向打开的文件 2,逐行读取文本test.txt #!/usr/bin/perl open d,"< test.txt"; while(<d>){ print $_; } close d; 结果:123 456 或者:print <d>; 结果:同