Python3中的模塊
模塊使用哪種語言實現並不重要,因為所有的模塊導入與使用的方式都相同。
1、常用模塊導入格式:
import importable1,importable2,...
import importable as preferred_name #將導入的模塊自定義名稱。如果模塊是一個包或包中的一個模塊,則需將每一部分用"."進行分隔。
from importable import * #將包內的所有內容都導入
from importable import object1,object2,...
from importable import object as preferred_name
from格式有可能導致名稱沖突,用from引入大量對象可以使用多行完成或對每個新行進行轉義處理。例:用from os.path import dirname,就可以直接調用dirname函數,而不需要每次都從path.dirname()進行調用,但一旦dirname這個變量被自定義的名字使用,那麽dirname就是你自定義的內容,而不是那個調用的函數了,這就是所說的名稱沖突。
2、包
包就是一個目錄,其中包含一組模塊和一個_init_.py文件。
from package import * 將引入包中的所有模塊,因為包中的_init_.py中含有一個包含所有模塊名的_all_特殊變量,如果模塊名沒有在_all_中,就不能被*格式引入。同樣用此*格式也可一起引入一個模塊中的所有函數。
3、自定義模塊主要結構:第一行是shebang行,接著是一些註釋,接著通常是三引號包含的字符串,其中提供了模塊內容的概覽,通常也包括一些使用實例,這也是該模塊的docstring;然後是函數的主體。一般模塊結尾都有這三行:
if _name_="_main_":
import doctest
doctest.testmod()
Python3中的模塊