Perl语言学习(04 数组+列表)

2016-09-01 11:29:36来源:CSDN作者:haoweilaizoule人点击

由于公司需要,本人最近在学习Perl这种脚本语言,本文是我在学习Perl的过程中总结出来的一些心得和笔记,希望能够帮助也在学习Perl的各位同僚。废话不多说直接上干货!!!

————————————————— 干货分割线 —————————————————

表示列表数据的方式有3种,分别是列表,数组,哈希结构。

数组的表示:@数组名称,如@names,@users。数组变量可以与标量变量使用相同的名字,如$names@names,$users@users,这两个变量之间毫无瓜葛。

为列表赋值的一种方式:

qw( apples oranges 45.6 $x)

qw运算符省略了单个元素的‘’和,,使编辑更加快捷。注意:1.$x并没有被内插。他只是$x的简单组合。2.若数组中的元素包含空格,那么就不能使用qw运算符。

范围运算符(..:

(1..10):他包含从110的所有数,使用若干范围的表示方法:(1..10,21..30;范围运算符也可以用于字母,如(a..z,(aa..zz);

($a,@fruit,$c) = qw (peaches  mangoes  grapes  cherries);

其中$a = peaches ,@fruit =mangoes  grapes  cherries$c = undef;

访问数组中的某个元素:

@trees = qw(oak cedar maple apple);

Print $tree[0];

$trees[4] = ‘pine’;

$trees[4] $trees毫无瓜葛,$trees[4]中有一个[],系统知道说的是数组中的标量。

输出结尾标号的两种方法:

1.$#arrayname

Exp:

@names = qw(mile linken ailun);print $#names;      #输出2.

若修改$#names的值,就会改变数组的长度。若要缩小数组,在设定的某个索引处截断数组;若要扩大数组,就增加更多的元素,新值将全部设置成为undef

2.$size = @array;  #它将@array中的元素数量放入$size中,这利用的是Perl中的上下文环境特性。

也可以为数组设置负索引:$array[-1]@array的最后一个元素。

可以使用一个scalar的特殊伪函数强制将某个东西放入标量上下文中:

Print acalar (@foo);  #输出foo中元素的数量。

什么是文件结尾呢?当P e r l读取来自终端的全部输入且你完成P e r l数据的

输入时,你必须发出通知。为此通常键入一个End of File(文件结束)字符

(E O F)。该字符随着你使用的操作系统的不同而各有差别。在U N I X下,该字

符通常是在一行的开头使用C t r l + D。在M S D O S或者Wi n d o w s系统上,该字符

是在输入的任何位置两次使用C t r l + Z。

在标量上下文中使用的逗号是个运算符,它用于从左至右对每个元素进行计算,再返回最右边的元素的值:

$names = ('mile','linken','ailun','adf');print $names;  #返回adf.foreach语句:foreach $cone(@flavors){    print “I’d like a cone of $cone/n”;}

在这个代码中,变量$ c o n e设置为@ f l a v o r s中的各个值。当$ c o n e被设置为@ f l a v o r s中的各个值时,循环体就开始执行,为@ f l a v o r s中的每个值输出消息。请注意,在一个f o r e a c h循环中,迭代器并不只是设置为列表中的每个元素的值,它实际上是对列表的元素的引用。因此,在上面这个f o r e a c h循环中,如果修改该循环中的$ c o n e,就能修改@ f l a v o r s中的对应元素.

@flavor = qw(juhua meihua taohua pingguohua xiguahua);

foreach $hua(@flavor){

$hua = "$hua ice cream";

print "I'd like a bowl of $hua/n";

}

输出:

 

S o r t函数将一个列表作为它的参数,并且大体上按照字母顺序对

列表进行排序,然后该函数返回一个排定顺序的新列表。原始数组保持不变。,它的默认

排序次序是A S C I I顺序。这意味着以大写字母开头的所有单词均排在以小写字母开头的单词的前面。

飞船运算符< = >。飞船运算符因为从侧面看它像一个飞行的碟子而得名。

如果它左边的操作数小于右边的操作数,那么它返回- 1,如果左边的操作数大于右边的操作

数,则返回0。

r e v e r s e。当在标量上下文中

被赋予一个标量值时, r e v e r s e函数能够对字符串的字符进行倒序操作,返回倒序后的字符串。例如,在标量上下之中调用r e v e r s e ( " P e r l ")将返回l r e p。当在列表上下文中被赋予一个列表时,r e v e r s e函数能够返回倒序后的列表元素,


最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台