日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:Python查看模塊(變量、函數(shù)、類)方法

在導入模塊之后,開發(fā)者往往需要了解模塊包含哪些功能,比如包含哪些變量、哪些函數(shù)、哪些類等,還希望能查看模塊中各成員的幫助信息,掌握這些信息才能正常地使用該模塊。

創(chuàng)新互聯(lián)長期為近千家客戶提供的網(wǎng)站建設(shè)服務,團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為肥鄉(xiāng)企業(yè)提供專業(yè)的成都做網(wǎng)站、網(wǎng)站設(shè)計,肥鄉(xiāng)網(wǎng)站改版等技術(shù)服務。擁有十余年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

為了查看模塊包含什么,可以通過如下兩種方式:

使用 dir() 函數(shù)。

使用模塊本身提供的 __all__ 變量。

前面章節(jié)已經(jīng)介紹過 dir() 函數(shù)的基本用法,該函數(shù)可用于返回模塊或類所包含的全部程序單元(包括變量、函數(shù)、類和方法等),但直接使用 dir() 函數(shù)默認會列出模塊內(nèi)所有的程序單元,包括以下畫線開頭的程序單元,而這些以下畫線開頭的程序單元其實并不希望被外界使用。

比如在 Python 的交互式解釋器中執(zhí)行如下命令來導入 string 模塊(Python 內(nèi)置的用于豐富字符串功能的模塊):

>>> import string

然后通過 dir() 函數(shù)來查看該模塊的內(nèi)容,將可以看到如下輸出結(jié)果:

>>> dir(string)
['Formatter', 'Template', '_ChainMap', '_TemplateMetaclass', '__all__', '__builtins__', '__cached__', '__doc__',
 '__file__', '__loader__', '__name__', '__package__', '__spec__', '_re', '_string', 'ascii_letters', 
 'ascii_lowercase', 'ascii_uppercase', 'capwords', 'digits', 'hexdigits', 'octdigits', 'printable', 'punctuation', 
 'whitespace']

很明顯,該模塊內(nèi)有大量以下畫線開頭的程序單元,其實這些程序單元并不希望被其他程序使用,因此列出這些程序單元意義不大。

為了過濾這些以下畫線開頭的程序單元,我們可以使用如下列表推導式來列出模塊中的程序單元:

>>> [e for e in dir(string) if not e.startswith('_')]
['Formatter', 'Template', 'ascii_letters', 'ascii_lowercase', 'ascii_uppercase', 'capwords', 'digits', 'hexdigits', 
'octdigits', 'printable', 'punctuation', 'whitespace']

此命令使用 for 循環(huán)的列表推導式列出了 dir(string) 返回的所有不以下畫線開頭的程序單元,它們才是該模塊希望被其他程序使用的程序單元。

此外,本章前面還介紹過模塊中的 __all__ 變量,該變量相當于該模塊開放的功能接口,因此也可通過該模塊的 __all__ 變量來查看模塊內(nèi)的程序單元。例如,在交互式解釋器中輸入如下命令:

>>> string.__all__
['ascii_letters', 'ascii_lowercase', 'ascii_uppercase', 'capwords', 'digits', 'hexdigits', 'octdigits', 'printable', 
'punctuation', 'whitespace', 'Formatter', 'Template']

對比前面列表推導式列出的結(jié)果和此處 __all__ 變量列出的結(jié)果,不難發(fā)現(xiàn)二者的輸出結(jié)果大致相同,這說明使用這兩種方式都可以查看到模塊所包含的程序單元。


當前題目:創(chuàng)新互聯(lián)Python教程:Python查看模塊(變量、函數(shù)、類)方法
標題URL:http://m.5511xx.com/article/cohpghe.html