modern perl學習筆記

來源:互聯網
上載者:User

eq 操作符通過強制 字串上下文,按字串對待它的運算元。== 操作符則強制 數值上下文。 

在極少數情況下,沒有合適類型的操作符存在,你也許需要明確地強制上下文。強制數值上下文,在變數前加零。 強制字串上下文,將變數和Null 字元串拼接起來。強制布爾上下文,使用雙重否定操作符。

my $numeric_x = 0 + $x; # 強制數值上下文
my $stringy_x = '' . $x; # 強制字串上下文
my $boolean_x = !!$x; # 強制布爾上下文

 

作為對你設定 CPAN 用戶端和相應環境來構建和安裝發行版的回報,你得到了可以完成任何任務的 程式碼程式庫的訪問權────

從資料庫訪問到能處理現存幾乎所有網路裝置的協議分析工具再到聲音和映像 處理庫以及你系統上共用庫的封裝器。   #或許這就是Perl的優勢所在吧。。。

 

App::cpanminus 是一個新興的 CPAN 用戶端,以速度、簡潔和零配置為目標。安裝它簡單到:  #這個不錯

 $ curl -LO http://xrl.us/cpanm $ chmod +x cpanm

即使你可以通過一系列內嵌的逸出字元來聲明一個複雜的字串,有些時候跨行聲明一個多行字元 串更為方便。heredoc 的文法讓你可以以另一種方式進行多行字串賦值:

 my $blurb =<<'END_BLURB';
 He looked up. "Time is never on our side, my child. Do you see the irony? All they know is change. Change is the constant on which they all can agree.
 Whereas we, born out of time to remain perfect and perfectly self-aware, can only suffer change if we pursue it. It is against our nature.
 We rebel against that change. Shall we consider them greater for it?"
 END_BLURB

Perl 5 中讀取檔案最清晰的方式是:
use autodie;
open my $fh, '<', $filename;
while (my $line = <$fh>)
{
chomp $line;
...
}


,$@ 是一個 全域 變數。為了安全起見,你應該在意圖捕獲異常之前,用 local 本地化的它
的值:
local $@;
# 也許無法開啟記錄檔
my $fh = eval { open_log_file( 'monkeytown.log' ) };
# 捕獲異常
if ($@) { ... }

 

。來自 CPAN Try::Tiny 發行模組非常簡短,易於安
裝, 易於理解,同時也便於使用:
use Try::Tiny;
my $fh = try { open_log_file( 'monkeytown.log' ) }
catch { ... };
不僅是文法比 Perl 5 預設的更加友好,而且該模組在你不知情的情況下處理了所有邊邊角角的情況。       # 又跪了。。。。


模組 就是一個包含於自身檔案中、可用 use 或 require 載入的包。一個模組必須是 合法的 Perl 5
代碼。它必須以一個求值得真的運算式結束


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.