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

Perl語法 Perl數組和列表用法解析

開發 架構
Perl語言有很多值得學習的地方,本文向大家簡單介紹一下Perl語法中Perl數組和列表的概念,希望本文的介紹能讓你有所收獲。

本文和大家重點討論一下Perl語法中Perl數組和列表,列表是包含在括號里的一序列的值,可以為任何數值,也可為空,如:(1,5.3,"hello",2),空列表:()。

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為結束輸入的符號

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++;

}

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語法 解析Perl變量使用
  2. Perl語法中Perl運算符用法指南
  3. Perl數組和列表用法指導
  4. Perl數組變量和列表用法指南
  5. 技術分享 Perl數組--列表的存貯如何進行
責任編輯:佚名 來源: csdn.net
相關推薦

2010-07-20 13:02:08

Perl數組

2010-07-19 13:49:17

Perl函數

2010-07-21 13:59:59

Perl引用

2010-07-20 14:41:55

Perl語法

2010-07-16 14:05:58

Perl數組

2010-07-13 13:49:43

Perl foreac

2010-07-13 09:58:51

Perl關聯數組

2010-07-20 15:36:58

Perl語法

2010-07-13 14:26:11

Perl數組

2010-07-19 09:52:04

Perl標量

2010-07-20 14:52:51

Perl語法

2010-07-19 16:25:06

Perl數組

2010-07-15 10:22:23

Perl控制結構

2010-07-16 16:56:01

Perl構造函數

2010-07-16 08:47:53

Perl if語句

2010-07-20 09:45:04

Perl繼承

2010-07-19 14:13:41

Perl函數

2010-07-14 15:32:21

Perl轉義字符

2010-07-16 13:10:36

Perl哈希表

2010-07-19 14:20:57

Perl函數
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美色综合一区二区三区 | а天堂中文最新一区二区三区 | 天天综合久久 | 中国美女一级黄色片 | 色偷偷888欧美精品久久久 | 精品欧美一区免费观看α√ | 99久9| 精一区二区 | 欧美日韩精品一区二区三区四区 | 久久久久亚洲精品 | 91素人 | 不卡在线视频 | 国产黄色大片在线观看 | 国产剧情一区二区三区 | 亚洲精品国产电影 | 成人免费视频 | 亚洲精品一区二区三区蜜桃久 | 成人精品一区二区三区中文字幕 | 狠狠操电影 | 日本国产一区二区 | 羞羞视频免费观看入口 | 黄色一级大片视频 | 亚洲电影免费 | 日韩一区二区在线播放 | www.国产日本 | 五月婷婷在线播放 | 特级丰满少妇一级aaaa爱毛片 | 日韩欧美一区二区三区免费观看 | 日韩在线视频观看 | 97日韩精品 | 国产一区二区欧美 | 亚洲成人观看 | 日韩成人在线免费视频 | 国产视频1 | 欧美成视频 | 一区二区三区四区视频 | 久久精品男人的天堂 | 二区三区视频 | 欧美一区二区三区在线看 | 欧美成人a∨高清免费观看 91伊人 | av大全在线观看 |