初嘗 Perl

來源:互聯網
上載者:User

標籤:

本文將闡述以下幾方面內容:

1、什麼是Perl

2、Perl有什麼用

3、Windows 下的Perl環境搭建

4、Perl 版Hello World

5、Perl 文法梗概

6、一些參考資料

什麼是Perl

Perl 是一門由 Larry Wall(拉裡·沃爾)設計並實現的一門指令碼語言,Larry Wall設計這門語言的最初的目的為了讓UNIX 上得報表處理工作變得更方便。Perl 第一版的發行時間為 1987年(Python第一版的發行時間為 1991年、Ruby第一版的發行時間為 1995年,這三種程式設計語言經常被放在一起做比較)。

Perl的來自單詞Pearl(珍珠的意思),或許在設計者 Larry Wall 眼裡,Perl如珍珠般珍貴

Perl的吉祥物為駱駝據說是因為Oreilly出版的暢銷書Programming Perl的封面是一匹駱駝,Perl社區就採用了駱駝作為Perl語言的吉祥物。

 

Perl 有什麼用

引用維基百科的說法,Perl的用途很廣,除了CGI以外,Perl還被用於圖形編程、系統編程、網路編程、金融、生物等領域。由於其靈活性,Perl被稱為指令碼語言中的瑞士軍刀。在CPAN上有大量優秀Perl的庫。在Linux和Mac OS 上都是內建Perl的。總結為一句話——Perl很有用,當需要指令碼語言的時候,不妨考慮下Perl。這些我們瞭解即可。

本篇文章為初嘗Perl,定位為瞭解Perl的梗概,博主目前現實工作中也沒用到Perl,僅僅當一個知識儲備,以後用到Perl的時候再深入學習一番。

 

Windows 下的Perl環境搭建

1、訪問 http://www.perl.org/ 下載Perl Windows的實現版本,這裡有兩個版本(Strawberry Perl 和 ActiveState Perl)這兩個版本沒什麼大的區別,博主選擇了後者ActiveState Perl 5.20 

2、安裝 ActiveState Perl 5.20 ,一路預設安裝即可

3、驗證 Perl 是否安裝成功,在命令提示字元下輸入 perl –v

如出現所示資訊表示 Perl 已安裝成功

 

Perl 版Hello World

1、開啟一個文字編輯器(如Notepad++),輸入如下內容

# perl-wprint "Hello World";

在名利提示符下運行結果為(代碼儲存在 1.pl 中)

上面的 # 是注釋符號, perl –w 是要求 perl 顯式 Warmming 資訊的選項

 

Perl 文法梗概

1、 變數定義,在 Perl下有好幾種定義變數的方法,我撿最常用兩種說明:

單數變數:以$ 打頭,僅表示一個變數對象

複數變數:以@打頭,表示一個數組

例1:單數變數

# perl-w$pi = 3.141592;print $pi;

例2:複數變數

# perl-w@digital = (a..z);print @digital; #列印a到z的所有小寫字母

 

2、每個語句以分號“;”結束

 

3、簡單的數學運算

# perl-w$a = 2;$b = 3;print $a + $b;    # 加法print "\n";print $a - $b;    # 減法print "\n";print $a % $b;  # 模運算print "\n";print $a ** $b; # 冪運算

 

4、比較操作符 及 if 分支結構

比較 數字 字串 含義
等於 == eq 判斷相等與否
不等 != ne 判斷不等與否
小於 < lt 判斷小於與否
大於 > gt 判斷大於與否
小於或等於 <= le 判斷不大於與否
大於或等於 >= ge 判斷不小於與否
比較 <=> cmp 相等為0,前者大為1,否則為-1

也許讀者看到這個會奇怪,為什麼有兩套比較操作符,其實我也很奇怪,但是Perl設計人就是這樣設計的,咱不計較。這兩組比較符要求待比較參數先轉換為合適的參數類型後比較。光說不練假把式看代碼:

# perl-w$a = "a";$b = "b";if($a == $b){    print "兩變數相等";        } else {    print "兩變數不相等";}# 會列印兩變數相等 因為$a 和 $b 都是字串轉換為數字都會失敗,返回相同的預設值,所以相等
# perl-w$a = "a";$b = "b";if($a eq $b){    print "兩變數相等";        } else {    print "兩變數不相等";}

if分支包括 if 、if –else 、if –若干個elsif-else 3種

 

5、迴圈

Perl 有4種迴圈 while 、do-while、for、foeach

# perl-w# 列印1-100 被3整除的數$var = 1;while($var <= 100){    if($var % 3 == 0){        print $var;        print " ";    }    $var += 1;}

do-while 略

# perl-w# 列印1-100 被3整除的數for($var = 1;$var <=100;$var++){    if($var % 3 == 0) {        print $var;        print " ";    }}

foreach 的格式為:

foreach $i (@some_list){

   statement_1;

   …

   statement_n;

}

# perl-w# 列印1-100 被3整除的數# (1..100)返回的是一個數組foreach $var ((1..100)){    if($var % 3 == 0){        print $var;        print " ";    }}

在 for 和 foreach 中有兩個迴圈控制關鍵字——last 和 next。 last 相當於break,next 為 continue,有C基礎的人都能看懂什麼意思。

 

6、函數

函數的定義為用關鍵 sub 聲明

sub methodName{

  statement_1;

  …

  statement_n;

}

參數列表存在 @_ 中

如函數帶傳回值,結尾用 return 語句介面

看代碼

# perl-wsub add{    foreach $para (@_) {        print $para;        print " ";    }    print "\n";    return $_[0] + $_[1];    # 帶傳回值}print add(3,4);

 

 

一些參考資料

1、小駱駝書

2、大駱駝書

3、Perl 官網 http://www.perl.org/

 

本文完

初嘗 Perl

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.