純量變數以 $ 符號開始,其值可以是整數 (integer) 、帶小數點的浮點數 (floating-point number) 或字串 (string)
$n1 = 25; # 25 $n2 = 2.5; # 2.5 $s1 = "There are $n1 dollars.\n" # 雙引號字串 $s2 = 'There is no spoon.'; # 單引號字串
雙引號字串裡頭可以用變數及跳脫序列 (escape sequence) ,跳脫序列就是一些不可見字元,由斜線 \ 開始,然後接一些特定的英文字元,常見的有
跳脫序列的字元 | 說明 |
---|---|
\a | 響鈴 |
\b | 倒退鍵 |
\f | 跳頁 |
\n | 印出新列 |
\r | 歸位符號 |
\t | tab 鍵 |
\v | 垂直定位符號 |
\\ | 印出反斜線 |
\? | 印出問號 |
\' | 印出單引號 |
\" | 印出雙引號 |
陣列變數以 @ 符號開始,其字面常數為用小括弧圍起來的資料,若使用 .. 運算子就表示某一範圍的數值,例如
@array = (1, 2.0, 'spoon'); # 三個元素的陣列 @10 = (1 .. 10); # 從 1 到 10 的陣列 @alph = ("a" .. "z"); # 小寫英文字母表陣列 @days = qw/Monday Tuesday Wednesday Thursday Firday Saturday Sunday/; # 星期一到星期天的英文單字陣列
上面的 @days 用了另一種運算子 qw// ,這會將斜線範圍的文字以空白字元拆開成字串,形成字串陣列 (array) ,因此這會等於
# 星期一到星期天的英文單字陣列 @days2 = ('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Firday', 'Saturday', 'Sunday');
存取陣列元素可用中括弧加索引值,索引值由 0 開始依序遞增,例如
@array = (1, 2.0, 'spoon'); print $array[0]; # 印出 1 print $array[1]; # 印出 2 print $array[2]; # 印出 spoon
雜湊變數則是一種 key-value 配對的資料型態,例如
%ages = ('Tony' => 28, 'John' => 35, 'Mary' => 29);
'Tony' 、 'John' 、 'Mary' 為 key , 28 、 35 、 29 各是所屬的 value ,存取元素則利用中括弧加 key 值
print $ages{'Tony'}; # 印出 28 print $ages{'John'}; # 印出 35 print $ages{'Mary'}; # 印出 29
Perl 利用 $ 、 @ 、 % 三個前綴區分變數型態種類,不過變數命名還是有社群沿襲的習慣,接下來我們繼續來看看命名規則吧!
中英文術語對照 | |
---|---|
變數型態 | variable type |
純量變數 | scalar variable |
陣列變數 | array variable |
雜湊變數 | hash variable |
整數 | integer |
浮點數 | floating-point number |
字串 | string |
跳脫序列 | escape sequence |
陣列 | array |
您可以繼續參考
基礎篇
相關目錄
回 Perl 入門指南
回 Perl 教材
回首頁
參考資料
http://perldoc.perl.org/perlrun.html
http://www.tutorialspoint.com/perl/perl_variables.htm
http://www.tutorialspoint.com/perl/perl_scalars.htm
http://www.tutorialspoint.com/perl/perl_arrays.htm
http://www.tutorialspoint.com/perl/perl_hashes.htm
沒有留言:
張貼留言