模組使用哪種語言實現並不重要,因為所有的模組匯入與使用的方式都相同。
1、常用模組匯入格式:
1 import importable1,importable2,... 2 import importable as preferred_name #將匯入的模組自定義名稱。如果模組是一個包或包中的一個模組,則需將每一部分用"."進行分隔。 3 from importable import * #將包內的所有內容都匯入 4 from importable import object1,object2,... 5 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()