您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關Perl變量怎么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
Perl學習筆記 Perl變量的認識
Perl標量的學習
任何語言都有Perl變量,Perl變量在Perl中簡單的分為標量和組數Perl變量.
標量:表示單個的量,即英文中所說的單數.
例如:
$name="Hello"'; $age=18; $price=123.88; $price=343_333_333.898;
都是一個標量,Perl對數字標量在計算機中采用浮點數形式存貯。通常浮點數的精度是不夠準確的。這點需要特別注意。
下面是一個例子:
#!/usr/local/bin/perl $value=9.01e+21+0.01-9.01e+21; print("firstvalueis",$value,"\n"); $value=9.01e+21-9.01e+21+0.01; print("secondvalueis",$value,"\n"); --------------------------------------------------------- $program3_3 firstvalueis0 secondvalueis0.01
可以看到,不同的運算順序可能導致的結果不一樣!在Perl中十進制數字用0x開頭表示.0開頭表示一個8進制數。Perl對數學運算的操作符有:
算術操作符:+(加)、-(減)、*(乘)、/(除)、**(乘冪)、%(取余)、-(單目負)
(1)前面幾個不用說了吧.說一下乘冪這里需要注冊,基數不能為負數.
(2)單目負又是什么意思?他實際上就是一個負號。就是數學中的負數表示符。
Perl變量的算術比較符:
==(相等),<(小于),>(大于),!=(不等于),還有一個<=>(表示可以取三個數-1,0,1);
標量除了是一個數字,字符串之外,還可以是其它復雜類型的引用.這點請暫時記住.我將在后面詳細說明這個問題.
現在來說下字符串,Perl采用unicode表示一個數值,這就意味著和java一樣,可以表示世界上任何一個國家的語言文字,對于字符串的運算符有
.(相連)
比較符:lt(小于),gt(大于),ne(不等于),eq(等于),le(小于等于),ge(大于等于),需要說明的的是。字符串的運算是按Ascii來進行運算的。就是說a(Ascii值為97),A(ASCII值為65),結果就是:agtA
另一種Perl變量叫做數組Perl變量.數組大家都知道,表示一組數據的集合.數據型可以分為有序的數組和無序的列表.他通常相當于英語中的復數.還有一種叫散列.他是一種特殊的數組.用Key+value的形式來表示.相當于Java中的Map.是按鍵值對來存放的.
我們用$表示一個標量,用@表示一個列表和數組.用%表示一個散列.
舉例說明:
@lines=("a","b","c");
這樣就定義了一個數組,他里面有三個元素abc,定義數組時用()號把中間元素包擴起來.里面用,號分開,也可以寫成這樣:@lines=qw(abcd);
注意用qw定義時,里面不能寫,號.這點請記住它!,而且qw里面只能是字符的原型,比如說,你給成這樣:$a="a";@lines=qw($abcd);
將$a這個Perl變量傳進來,你的目的是這樣,但是我告訴你這達不到你希望的效果.
他會原封不動的給你顯示出來.這也正好說明了這里不能給abcd加個雙引號.
%person表示一個散列.
要對這個散列進行給值.使用$person{"name"}="Hello";
也可以使用%person=("a","b","c","d")這樣的形式,我們說過,散列表示一個key/value的集合,所以perl會將這樣的列表形式的數組按照key/value進行轉換.每兩個一組,前面是鍵,后面是值.
當然這樣的形式并不好看.
我們還可以寫成;%person=("a"=>"b","c"=>"d").
你可以直接把一個數組表示的Perl變量給一個散列.用(),你也可以把一個散列的具體值指向另一個散列.
%person{"a"}={
"name"=>"zhangsan",
"age"=>"23",
}
通過$person{"a"}{"name"}訪問到zhangsan;
不僅如此,你還可以將一個散列的具體值指向一個數量.
%person{"a"}=["a1","a2","a3"];
通過$person{"a"}[0]訪問到a1;
關于“Perl變量怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。