子產品(module)也是為了同樣的目的。在Python中,一個.py檔案就構成一個子產品。通過子產品,你可以調用其它檔案中的程式。
我們先寫一個first.py檔案,内容如下:
再寫一個second.py,并引入first中的程式:
在second.py中,我們使用了first.py中定義的laugh()函數。
引入子產品後,可以通過子產品.對象的方式來調用引入子產品中的某個對象。上面例子中,first為引入的子產品,laugh()是我們所引入的對象。
Python中還有其它的引入方式,
import a as b # 引入子產品a,并将子產品a重命名為b
from a import function1 # 從子產品a中引入function1對象。調用a中對象時,我們不用再說明子產品,即直接使用function1,而不是a.function1。
from a import * # 從子產品a中引入所有對象。調用a中對象時,我們不用再說明子產品,即直接使用對象,而不是a.對象。
這些引用方式,可以友善後面的程式書寫。
Python會在以下路徑中搜尋它想要尋找的子產品:
程式所在的檔案夾
标準庫的安裝路徑
作業系統環境變量PYTHONPATH所包含的路徑
如果你有自定義的子產品,或者下載下傳的子產品,可以根據情況放在相應的路徑,以便Python可以找到。
可以将功能相似的子產品放在同一個檔案夾(比如說this_dir)中,構成一個子產品包。通過
引入this_dir檔案夾中的module子產品。
該檔案夾中必須包含一個__init__.py的檔案,提醒Python,該檔案夾為一個子產品包。__init__.py可以是一個空檔案。
import module
module.object
__init__.py