Perl入门(三)Perl的数组

Perl数组的声明方式

Perl使用"@"符号声明一个数组:@array;

使用"()"或"qw()"声明数组中元素;

一个完整的声明方式为:

@array = (12,"123","abc",$var);......方法一

或者

@array = qw(12 123 abc); ............方法二

或者

@array = (1..10).....................方法三

Perl数组的存取

数组通过下标进行存取,数组的下标从0开始,单个元素存取推荐使用$,多个元素存取推荐使用@。

以@array=(1,2,3,4,5,6,7);为例

取数组元素:

$array[0]表示数组的第一个元素 1,以此类推。

@array[1..3]表示数组的第二个元素到第四个元素:2,3,4

@array[1,2,4]表示数组的第二,第三和第五个元素:2,3,5;顺序也可以交换:@array[4,1,2]: 5 2 3;

修改数组

通过上述取数组元素的方法,取得元素,然后进行重新赋值。

$array[0]= -1;# $array=(-1,2,3,4,5,6,7)

@array[1..2]=(8,9); # $array=(1,8,9,4,5,6,7)

Perl数组的初始化方法

()初始化

如【方法一】所示,将元素放入括号内以","为分隔符

qw()初始化

如【方法二】所示,将元素放入qw()的括号内,元素之间以【空格】分隔,字符串类型不需要使用引号。

缺点:它将括号内内容视为一整个字符串,然后根据空格进行分割,但是如果你希望某一个元素中也包含个空格,就没有办法实现.

..初始化

如【方法三】所示,".."表示一个范围,(1..5)等价于(1,2,3,4,5),(a..z)表示字母a-z的集合

Perl数组的基本属性

$#array 表示数组的最后一个元素的下标,数组长度-1

@array 表示数组长度,直接进行print会输出数组内容

Perl数组的遍历

方法一:使用循环数组下标进行遍历(较简单,自己动手尝试)

方法二:使用foreach循环进行遍历

#!user/bin/env perl -w
@array = qw(1 2 3 4 5 6);

$var = 100;

foreach $var (@array)
{
	print "$var\n";
}

print "var is : $var\n";

输出结果

1
2
3
4
5
6
var is : 100

上述输出结果中:

  • foreach如何进行遍历
  • 应该有注意到$var,var在循环中,担任一个局部变量的角色,循环完成后var的值还是原来的100,可以理解为:这个过程中有两个$var,一个是循环外面的,另外一个是foreach的局部变量.

数组相关的函数

sort:按照字符在ASCII码表中的顺序逐位向下进行排序

reverse:将数组进行倒序



Perl入门(三)Perl的数组

时间: 2024-08-19 07:43:02

Perl入门(三)Perl的数组的相关文章

Perl入门(六) Perl方法的使用

 1.定义一个方法 Perl使用sub定义方法. 语法: sub 方法名称{方法体} 2.调用一个方法 Perl直接使用方法名称调用方法. 调用方式有以下四种: 方法名称: &方法名称: 方法名称(); &方法名称(); 说明:方法调用可以再任何位置,可以在方法前.后调用,也可以在方法体内部调用. 3.传递参数 Perl通过方法名后面的括号将参数列表传递到方法体内.例如:function_name("param1","param2"...); 方

Perl入门(四)Perl的正则表达式

正则表达式是Perl语言的特色,基本的语法不是很难,但是编写一个符合需求.高效的正则表达式,还是有一些挑战的. Perl的三种匹配模式 1.查找 语法:m/正则表达式内容/; 作用:查找匹配内容中是否包含"正则表达式内容",如果包含返回1,否则返回0: #!user/bin/env perl -w #1... $str1 = "i like perl"; $result1 = ($str1 =~ m/perl/); print "$result1 $str

Perl入门(一)Perl的基本类型及运算符

在学习Perl的基础之前,还是希望大家有空去看以下Perl的简介.百度百科 一.Perl的基本类型 Per的基本类型分为两种:数值型和字符串型. 数值型可细分为 整数型.如123. 浮点型.如123.123.0.123456. 科学计数型.如1.23E2.1.23e2. 大数值类型.如1_156_123_585_123. 字符串型 字符串.如"123456",'123',qq(this is a string too!) 二.用变量存储基本类型值 Perl定义变量很简单.格式为:$变量

Perl入门(二)Perl的流程控制

Perl是一种粘性语言,如果你有其他语言的基础的话,你会发现他的流程控制完全和你所知的一模一样. 简单说一下他们的区别: Perl的elsif在其他语言里头可能表示为else if Perl的last,next在其他语言里头可能叫break和continue 不用找了,Perl中没有switch,其实这用if else也是可以实现的,不是么? Perl可能比你知道的语言里头多了这些:条件控制结构unless.循环控制结构until Perl还有一些特殊的写法 还是详细介绍一下Perl的流程控制吧

Perl入门 - Perl方法的使用

1.定义一个方法 Perl使用sub定义方法. 语法: sub 方法名称{方法体} 2.调用一个方法 Perl直接使用方法名称调用方法. 调用方式有以下四种: 方法名称: &方法名称: 方法名称(); &方法名称(); 说明:方法调用可以再任何位置,可以在方法前.后调用,也可以在方法体内部调用. 3.传递参数 Perl通过方法名后面的括号将参数列表传递到方法体内.例如:function_name("param1","param2"...); 方法体内

Perl入门(七) Perl脚本的调试

编程中错误不可避免,调试能够帮助我们发现有问题的代码段.在网上看了一下Perl脚本调试,发现其实很多东西并不需要,而且那么多也没人看. 下面简单整理一下. 1.进入debug. 使用-d,进入debug状态.例:perl -d Perl程序名称. 2.设置断点 b:设置断点.例:b 行号: c:程序执行到下一个断点处,或执行到指定行.例:c :c 行号: d:删除一个断点.例:d 断点所在行号: D:删除所有断点.例:D: L:列出所有断点.例:L. 3.程序调试 n:执行下一行,跳过方法: s

Perl入门(四)Perl的正則表達式

正則表達式是Perl语言的特色.主要的语法不是非常难,可是编写一个符合需求.高效的正則表達式.还是有一些挑战的. Perl的三种匹配模式 1.查找 语法:m/正則表達式内容/; 作用:查找匹配内容中是否包括"正則表達式内容",假设包括返回1,否则返回0: #!user/bin/env perl -w #1... $str1 = "i like perl"; $result1 = ($str1 =~ m/perl/); print "$result1 $st

Perl入门(五)Perl文件读写

 Perl文件夹操作 Perl创建.删除.修改文件夹 mkdir("文件夹名称",权限); rmdir("文件夹名称"); rename("旧文件夹名称","新文件夹名称"): 权限:4代表可读,2代表可写,1代表可执行:权限的组成:[前缀0][文件所有者][同组用户][其他用户]. 生成的数字序列由拥有的权限对应的数字加和计算得到. 如'0755'代表:文件所有者可读可写可执行,同组用户可读可执行,其他用户可读可执行.

Swift入门(五)——数组(Array)

集合 集合的定义 Swift中提供了两种数据结构用于存放数据的集合,分别是数组(Array)和字典(Dictionary).他们的主要区别在于数组中的元素由下标确定,而字典中的数据的值由数据的键(Key)决定.以下我们认为集合就是数组或字典. 集合的可变性 我们可以定义一个集合常量或者集合变量.一旦定义为常量,就意味着集合的长度.内容和顺序都不能再修改了.比如,定义为常量的数组,不能再向其中添加新的元素. 数组的创建 由于swift中变量的创建遵循" var 变量名:变量类型 "的语法