Perl语法之解析Perl变量使用

2019-10-01 12:10:03于海丽

for($i=$[;$i<=$#buffer;$i++){print$buffer[$i];}
上面语句与print@buffer;的输出成果是一样的.

1.2.3Perl语法中标量与数组变量

表机关符(,)与挨次计值运算符(,)很是相似.是以,Perl挪用哪一个运算符取决于号令文件运行时的详细环境,即文件正在利用数组仍是标量值.Perl在数组表达式中挪用表布局符,在挨次计值中挪用计值运算符.请思量以下两个表达式:

@an_array=(1,2,3,4,5);
$a_scalar=(1,2,3,4,5);

第一个语句初始化一个数组,第二句把$a_scalar变量的值设为5,并且打消了前4个元素的赋
值感化.
再来看一个例子:

print$assoc{1,2}; 
@print$assoc{1,2};

第一句打印二维联系关系数组的一个元素值,而第二句打印一维数组的两个元素值.

1.2.4Perl语法中联系关系数组变量

联系关系数组变量与数组变量很相似,都可以存储标量变量的表.它们的区别在于数组变量必需经由过程整数下标来引用数组元素,而联系关系数组变量可以经由过程任何值作为下标而到达拜候数组元素的目标.联系关系数组的下标我们称之为键值(Key),是一种索引值.下面我们经由过程一个例子来明白:

$ages{'Bob'}=35; 
$ages{'Mary'}=25; 
$,=''; 
print@ages{'Bob','Mary'}; 
printkeys(%ages); 
for$name(keys(%ages)) 

print"$nameis$ages{$keys}n"; 
}


法式把一个值赋给'$,'变量,如许今后的print语句的输出会受到影响,关于特别变量'$,'我们将在今后先容.Perl挪用联系关系数组变量时,利用花括号{}括起键值.

@ages{'Bob','Mary'}在花括号内给出了键值,暗示引用一个元素,此语句中有两个键值,暗示引用数组的一部门,其成果应为(35,25)与($ages{'Bob'},$ages{'Mary'})语句的成果不异.

printkeys(%ages)利用了keys运算符.其成果将返回联系关系数组的全部键值,构成一个表.%ages暗示引用整个联系关系数组.

请注重轮回语句中的print语句,在这里我们看到了在""(双引号)中插入变量的用法,这长短常有效的.在输出成果的时辰,变量将被替代成变量的值作为输出的终极成果,这便是所谓的内插法.可是Perl不许可在''(单引号)中插入变量!!!!