亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

主模塊和非主模塊

1、主模塊和非主模塊的定義

在 Python 函數(shù)中,如果一個(gè)函數(shù)調(diào)用了其他函數(shù)完成一項(xiàng)功能,我們稱這個(gè)函數(shù)為主函數(shù),如果一個(gè)函數(shù)沒(méi)有調(diào)用其他函數(shù),我們稱這種函數(shù)為非主函數(shù)。主模塊和非主模塊的定義也類似,如果一個(gè)模塊被直接使用,而沒(méi)有被別人調(diào)用,我們稱這個(gè)模塊為主模塊,如果一個(gè)模塊被別人調(diào)用,我們稱這個(gè)模塊為非主模塊。

2、name 屬性

在 Python 中,有主模塊和非主模塊之分,當(dāng)然,我們也得區(qū)分他們啊。那么怎么區(qū)分主模塊和非主模塊呢?

這就需要用到 __name__ 屬性了,這個(gè) ——name—— 屬性值是一個(gè)變量,且這個(gè)變量是系統(tǒng)給出的。利用這個(gè)變量可以判斷一個(gè)模塊是否是主模塊。如果一個(gè)屬性的值是 __main__ ,那么就說(shuō)明這個(gè)模塊是主模塊,反之亦然。但是要注意了:** 這個(gè) __main__ 屬性只是幫助我們判斷是否是主模塊,并不是說(shuō)這個(gè)屬性決定他們是否是主模塊,決定是否是主模塊的條件只是這個(gè)模塊有沒(méi)有被人調(diào)用**

具體看示例:

首先創(chuàng)建了模塊 lname ,然后判斷一下是否是主模塊,如果是主模塊就輸出 main 不是,就輸出 not main ,首先直接運(yùn)行該模塊,由于該模塊是直接使用,而沒(méi)有被人調(diào)用,所以是主模塊,因此輸出了 main ,具體看下圖:

1ae255ee9ecf03e49f0c76567237fa2.png

然后又創(chuàng)建一個(gè) user_lname 模塊,里面只是簡(jiǎn)單的導(dǎo)入了 lname 模塊,然后執(zhí)行,輸出的結(jié)果是 not main ,因?yàn)?lname 模塊被該模塊調(diào)用了,所以不是主模塊,輸出結(jié)果如圖:

efe153728d0e77679cd6cf6852e545b.png


繼續(xù)學(xué)習(xí)
||
提交重置代碼