Python進階03 模組
之前看到了函式和物件。從本質上來說,它們都是為了更好的組織已經有的程式,以便複用。
模組(module)也是為了同樣的目的。在Python中,一個.py檔案就構成一個模組。通過模組,你可以呼叫其它檔案中的程式。
引入模組
我們先寫一個first.py檔案,內容如下:
# 作為一個模組,被引入
def laugh():
print('hahadaxiao')
再寫一個second.py,並引入first中的程式:
import first
for i in range(3):
first.laugh()
在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)中,構成一個模組包。通過
import this_dir.module
引入this_dir資料夾中的module模組。
該資料夾中必須包含一個__init__.py的檔案,提醒Python,該資料夾為一個模組包。__init__.py可以是一個空檔案。
總結
import module
module.object
__init__.py
我的筆記學習來源:作者:Vamei 出處:http://www.cnblogs.com/vamei