列表是包含在括號裡的一串行的值,可以為任何數值,也可為空
列表存貯於陣列變數中,與簡單變數不同,陣列變數以字元"@"打頭,如:
@array = (1, 2, 3);
注:(1)陣列變數建立時初始值為空列表:()。
(2)因為perl用@和$來區分陣列變數和簡單變數,所以同乙個名字可以同時用於陣列變數和簡單變數
如果給超出陣列大小的元素賦值,則陣列自動增長,原來沒有的元素值為null
陣列間拷貝
@result = @original;
.用陣列給列表賦值
@list2 = (1, @list1, 5);
陣列對簡單變數的賦值
(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 = ;
@array = ; # ^d為結束輸入的符號
字串中的方括號和變數替換
"$var[0]" 為陣列@var的第乙個元素。
"$var\[0]" 將字元"["轉義,等價於"$var". "[0]",$var被變數替換,[0]保持不變。
"$[0]" 亦等價於"$var" ."[0]"。
"$\"則取消了大括號的變數替換功能,包含文字:$.
列表範圍:
(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") x 2);
其結果為:
hello, fred!
hello, fred!
陣列的輸出:
(1) @array = (1, 2, 3);
print (@array, "\n");
結果為:
123(2) @array = (1, 2, 3);
print ("@array\n");
結果為:
1 2 3
列表/陣列的長度
當陣列變數出現在預期簡單變數出現的地方,則perl直譯器取其長度。
@array = (1, 2, 3);
$scalar = @array; # $scalar = 3,即@array的長度
($scalar) = @array; # $scalar = 1,即@array第乙個元素的值
子陣列
sort--按字元順序排序
reverse--反轉陣列
chop--陣列去尾
join/split--連線/拆分
Perl學習筆記1 基礎摘要
1.argv 儲存程式的引數,不包括程式名,各引數可通過 argv index 訪問 程式名稱儲存在 0中。2.子過程引數儲存在 中,各個引數通過 index 訪問。3.list array的最後個索引為 array。4.變數未初始化的情況下 scalar型為undef,list型為空列表。5.讀取...
perl手冊頁命令
手冊頁 內容perl 有哪些perl手冊頁 perldata 資料型別 perlsyn 語法perlop 操作符和優先順序 perlre 正規表示式 perlvar 預定義變數 perlsub 子例程perlfunc 內建函式 perlmod perl模組如何工作 perlref 引用perlobj...
perl學習 perl除錯命令
除錯命令列表如下 所有命令都在除錯提示符下頂格輸入,命令大小寫有關 h 顯示偵錯程式的幫助資訊。h 以分頁形式顯示偵錯程式的幫助資訊。hh 顯示乙個壓縮的幫助資訊。h除錯命令 顯示某個除錯命令的幫助。perl偵錯程式用法中p表示式 顯示變數或表示式的值,不顯示複雜變數嵌入的結構和資料。x表示式 顯示...