您好,登錄后才能下訂單哦!
這篇文章主要介紹了Perl模塊怎么用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
Perl模塊
多數大型程序都分割成多個部件,每一部件通常含有一個或多個子程序及相關的變量,執行特定的一個或多個任務。集合了變量和子程序的部件稱為程序Perl模塊。
1、創建Perl模塊
Perl5中用包來創建Perl模塊,方法是創建包并將之存在同名的文件中。例如,名為Mymodult的包存貯在文件Mymodult.pm中(擴展名.pm表示PerlModule)。下例的Perl模塊Mymodult含有子程序myfunc1和myfunc2及變量$myvar1和$myvar2。
1:#!/usr/local/bin/perl 2: 3:packageMymodule; 4:requireExporter; 5:@ISA=qw(Exporter); 6:@EXPORT=qw(myfunc1myfunc2); 7:@EXPORT_OK=qw($myvar1$myvar2); 8: 9:submyfunc1{ 10:$myvar1+=1; 11:} 12: 13:submyfunc2{ 14:$myvar2+=2; 15:}
第3~7行是標準的PerlPerl模塊定義方式。第3行定義包,第4行包含內置PerlPerl模塊Exporter,6、7行進行子程序和變量的輸出以與外界聯系。第6行創建名為@EXPORT的特殊數組,該數組中的子程序可以被其它程序調用,這里,myfunc1和myfunc2可以被訪問。其它任何在Perl模塊中定義但沒有賦給數組@EXPORT的子程序都是私有的,只能在Perl模塊內部調用。第7行創建另一個名為@EXPORT_OK的特殊數組,其中含有可被外部程序訪問的變量,這里含有$myvar1和$myvar2。
2、導入Perl模塊
將Perl模塊導入你的Perl程序中使用use語句,如下句導入了MymodulePerl模塊:
useMymodule;
這樣,Perl模塊Mymodule中的子程序和變量就可以使用了。
取消導入Perl模塊使用no語句,如下句取消了MymodulePerl模塊的導入:
noMymodule;
下面看一個導入Perl模塊和取消導入的例子,使用integerPerl模塊要求所有數字運算基于整數,浮點數在運算前均被轉化為整數。
1:#!/usr/local/bin/perl 2: 3:useinteger; 4:$result=2.4+2.4; 5:print("$result\n"); 6: 7:nointeger; 8:$result=2.4+2.4; 9:print("$result\n");
程序輸出如下:
$program
4
4.8
$
如果use或no語句出現在語句塊中,則只在該塊的有效范圍內起作用,如:
useinteger; $result1=2.4+2.4; if($result1==4){ nointeger; $result2=3.4+3.4; } $result3=4.4+4.4;
結果輸出如下:
4
6.8
8
這里,no語句只在if語句中有效,出了if語句仍使用integerPerl模塊,因此4.4在做加法前被轉化成了4。
3、預定義Perl模塊
Perl5提供了許多有用的預定義Perl模塊,可以用use導入和no語句取消。下面是庫中最有用的一些Perl模塊:
Perl文檔中有完整的預定義Perl模塊列表。
注:世界各地的Perl5用戶寫了許多有用的Perl模塊,CPAN(ComprehensivePerlArchiveNetwork)的Perl文檔有其完整的列表。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“Perl模塊怎么用”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。