溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Perl如何使用模塊

發(fā)布時間:2021-12-07 09:11:17 來源:億速云 閱讀:226 作者:小新 欄目:編程語言

這篇文章主要為大家展示了“Perl如何使用模塊”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學習一下“Perl如何使用模塊”這篇文章吧。

Perl模塊

1、創(chuàng)建Perl模塊

Perl5中用包來創(chuàng)建Perl模塊,方法是創(chuàng)建包并將之存在同名的文件中。例如,名為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行包含內(nèi)置PerlPerl模塊Exporter,6、7行進行子程序和變量的輸出以與外界聯(lián)系。第6行創(chuàng)建名為@EXPORT的特殊數(shù)組,該數(shù)組中的子程序可以被其它程序調(diào)用,這里,myfunc1和myfunc2可以被訪問。其它任何在Perl模塊中定義但沒有賦給數(shù)組@EXPORT的子程序都是私有的,只能在Perl模塊內(nèi)部調(diào)用。第7行創(chuàng)建另一個名為@EXPORT_OK的特殊數(shù)組,其中含有可被外部程序訪問的變量,這里含有$myvar1和$myvar2。

2、導(dǎo)入Perl模塊

將Perl模塊導(dǎo)入你的Perl程序中使用use語句,如下句導(dǎo)入了MymodulePerl模塊:
useMymodule;
這樣,Perl模塊Mymodule中的子程序和變量就可以使用了。
取消導(dǎo)入Perl模塊使用no語句,如下句取消了MymodulePerl模塊的導(dǎo)入:
noMymodule;
下面看一個導(dǎo)入Perl模塊和取消導(dǎo)入的例子,使用integerPerl模塊要求所有數(shù)字運算基于整數(shù),浮點數(shù)在運算前均被轉(zhuǎn)化為整數(shù)。

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語句出現(xiàn)在語句塊中,則只在該塊的有效范圍內(nèi)起作用,如:

useinteger;  $result1=2.4+2.4;  if($result1==4){  nointeger;  $result2=3.4+3.4;  }  $result3=4.4+4.4;

結(jié)果輸出如下:

4
6.8
8
這里,no語句只在if語句中有效,出了if語句仍使用integerPerl模塊,因此4.4在做加法前被轉(zhuǎn)化成了4。

3、預(yù)定義Perl模塊

Perl5提供了許多有用的預(yù)定義Perl模塊,可以用use導(dǎo)入和no語句取消。下面是庫中最有用的一些Perl模塊:

Perl如何使用模塊

Perl文檔中有完整的預(yù)定義Perl模塊列表。

以上是“Perl如何使用模塊”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI