成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Perl數組和列表用法指導

開發 架構
Perl語言中Perl數組和列表的概念你是否了解,這里向大家簡單介紹一下Perl數組和列表的該男及用法,希望本文的介紹能讓你有所收獲。

本文和大家重點討論一下Perl數組和列表的概念,列表是包含在括號里的一序列的值,可以為任何數值,也可為空,列表存貯于Perl數組變量中,與簡單變量不同,Perl數組變量以字符"@"打頭。

Perl數組和列表

一、列表

列表是包含在括號里的一序列的值,可以為任何數值,也可為空,如:(1,5.3,"hello",2),空列表:()。

注:只含有一個數值的列表(如:(43.2))與該數值本身(即:43.2)是不同的,但它們可以互相轉化或賦值。

列表例:

(17,$var,"astring")

(17,26<<2)

(17,$var1+$var2)

($value,"Theansweris$value")

二、Perl數組--列表的存貯

列表存貯于Perl數組變量中,與簡單變量不同,Perl數組變量以字符"@"打頭,如:

@array=(1,2,3);

注:

(1)Perl數組變量創建時初始值為空列表:()。

(2)因為PERL用@和$來區分Perl數組變量和簡單變量,所以同一個名字可以同時用于Perl數組變量和簡單變量,如:

$var=1;

@var=(11,27.1,"astring");

但這樣很容易混淆,故不推薦。

1、Perl數組的存取

◆對Perl數組中的值通過下標存取,第一個元素下標為0。試圖訪問不存在的Perl數組元素,則結果為NULL,但如果給超出Perl數組大小的元素賦值,則Perl數組自動增長,原來沒有的元素值為NULL。如:

@array=(1,2,3,4);

$scalar=$array[0];

$array[3]=5;#now@arrayis(1,2,3,5)

$scalar=$array[4];#now$scalar=null;

$array[6]=17;#now@arrayis(1,2,3,5,"","",17)

◆Perl數組間拷貝

@result=@original;

◆用Perl數組給列表賦值

@list1=(2,3,4);

@list2=(1,@list1,5);#@list2=(1,2,3,4,5)

◆Perl數組對簡單變量的賦值

(1)@array=(5,7,11);

($var1,$var2)=@array;#$var1=5,$var2=7,11被忽略

(2)@array=(5,7);

($var1,$var2,$var3)=@array;#$var1=5,$var2=7,$var3=""(null)

◆從標準輸入(STDIN)給變量賦值

$var=<STDIN>;

@array=<STDIN>;#^D為結束輸入的符號  #p#

2、字符串中的方括號和變量替換

"$var[0]"為Perl數組@var的第一個元素。

"$var\[0]"將字符"["轉義,等價于"$var"."[0]",$var被變量替換,[0]保持不變。

"${var}[0]"亦等價于"$var"."[0]"。

"$\{var}"則取消了大括號的變量替換功能,包含文字:${var}.

3、列表范圍:

(1..10)=(1,2,3,4,5,6,7,8,9,10)

(2,5..7,11)=(2,5,6,7,11)

(3..3)=(3)

◆用于實數

(2.1..5.3)=(2.1,3.1,4.1,5.1)

(4.5..1.6)=()

◆用于字符串

("aaa".."aad")=("aaa","aab","aac","aad")

@day_of_month=("01".."31")

◆可包含變量或表達式

($var1..$var2+5)

◆小技巧:

$fred="Fred";

print(("Hello,".$fred."!\n")x2);

其結果為:

Hello,Fred!

Hello,Fred!

4、Perl數組的輸出:

(1)@array=(1,2,3);

print(@array,"\n");

結果為:123

(2)@array=(1,2,3);

print("@array\n");

結果為:123

5、列表/Perl數組的長度

當Perl數組變量出現在預期簡單變量出現的地方,則PERL解釋器取其長度。

@array=(1,2,3);

$scalar=@array;#$scalar=3,即@array的長度

($scalar)=@array;#$scalar=1,即@array第一個元素的值

注:以Perl數組的長度為循環次數可如下編程:

$count=1;

while($count<=@array){

print("element$count:$array[$count-1]\n");

$count++;

} #p#

6、子Perl數組

@array=(1,2,3,4,5);

@subarray=@array[0,1];#@subarray=(1,2)

@subarray2=@array[1..3];#@subarray2=(2,3,4)

@array[0,1]=("string",46);#@array=("string",46,3,4,5)now

@array[0..3]=(11,22,33,44);#@array=(11,22,33,44,5)now

@array[1,2,3]=@array[3,2,4];#@array=(11,44,33,5,5)now

@array[0..2]=@array[3,4];#@array=(5,5,"",5,5)now

可以用子Perl數組形式來交換元素:

@array[1,2]=@array[2,1];

7、有關Perl數組的庫函數

(1)sort--按字符順序排序

@array=("this","is","a","test");

@array2=sort(@array);#@array2=("a","is","test","this")

@array=(70,100,8);

@array=sort(@array);#@array=(100,70,8)now

(2)reverse--反轉Perl數組

@array2=reverse(@array);

@array2=reversesort(@array);

(3)chop--Perl數組去尾

chop的意義是去掉STDIN(鍵盤)輸入字符串時最后一個字符--換行符。而如果它作用到Perl數組上,則將Perl數組中每一個元素都做如此處理。

@list=("rabbit","12345","quartz");

chop(@list);#@list=("rabbi","1234","quart")now

(4)join/split--連接/拆分

join的第一個參數是連接所用的中間字符,其余則為待連接的字符Perl數組。

$string=join("","this","is","a","string");#結果為"thisisastring"

@list=("words","and");

$string=join("::",@list,"colons");#結果為"words::and::colons"

@array=split(/::/,$string);#@array=("words","and","colons")now

【編輯推薦】

  1. Perl數組用法詳盡解讀
  2. 暢談Perl數組的使用技巧
  3. Perl變量中Perl數組概念詳解
  4. Perl基礎 Perl數組學習指南
  5. 深入解析Perl中Perl數組的使用

 

責任編輯:佚名 來源: csdn.net
相關推薦

2010-07-20 15:02:20

Perl數組

2010-07-16 14:05:58

Perl數組

2010-07-21 13:43:30

Perl數組

2010-07-23 14:12:14

Perl Hash

2010-07-26 14:45:17

Perl Hash

2010-07-21 13:53:07

Perl引用

2010-07-23 13:23:10

Perl語言

2010-07-26 15:17:51

Perl解析XML文件

2010-07-19 13:49:17

Perl函數

2010-07-26 16:23:23

Perl語言

2010-07-21 10:32:05

Perl函數返回值

2010-07-26 10:09:01

Perl split函

2010-07-21 10:05:13

Perl文本處理模塊

2010-07-19 16:25:06

Perl數組

2010-07-21 13:59:59

Perl引用

2010-07-16 10:20:46

Perl關聯數組

2010-07-16 10:30:10

Perl關聯數組

2010-07-19 13:06:13

Perl二維數組

2010-07-21 11:17:30

2010-07-26 13:27:19

Perl多線程
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜看片| 欧美性久久 | 国产97视频在线观看 | 九一国产精品 | 亚洲一区久久 | 欧美无乱码久久久免费午夜一区 | 久久人人网| 男女羞羞视频在线看 | 国产精品久久久久国产a级 欧美日本韩国一区二区 | 影音先锋男 | 国产成人午夜高潮毛片 | 久久这里只有精品首页 | 狠狠综合网 | 91视视频在线观看入口直接观看 | 国产精品久久久一区二区三区 | 亚洲女人天堂成人av在线 | 日韩一区二区三区在线视频 | 韩日一区二区三区 | 在线看一区二区 | 精品少妇一区二区三区在线播放 | 激情国产 | 国产精品久久精品 | 青青草视频网站 | 色资源在线| 日本在线视| 精品国产18久久久久久二百 | 久久精品国产久精国产 | 91操操操 | 亚洲国产精品成人久久久 | 亚洲精品日韩一区二区电影 | 亚洲男人天堂 | 国产精品福利在线 | 欧美精品在线观看 | 色呦呦在线 | 久操国产 | 天天宗合网 | 久久久久www | 夜夜爽99久久国产综合精品女不卡 | 最新免费黄色网址 | 国产精品福利在线观看 | 91精品国产91久久久久久吃药 |