前話
最近跟着廖雪峰的教程學到 模塊 這一節。關於如何自定義一個模塊,如果大家不懂的話還請先看下面這篇博文 ↓
模塊是個好東西啊,大牛們開源共享許多模塊也加快了大家開發的速度,許多開源模塊可以在這里找到 ↓
因為剛入門所有有很多細節不懂,在網上搜尋資料的時候發現各位大神們的教程實在太過於精簡,讓我這個菜鳥很辛苦的才操作成功。
因此在這里記錄下來。
開始
第一種,直接 import
這里有個大前提,就是你的py執行文件和模塊同屬於同個目錄(父級目錄),如下圖:

- main.py 和 pwcong模塊同在python目錄
- 執行文件為main.py
- pwcong文件夾為一個模塊
我把pwcong模塊提供的函數寫在 __init__.py 里,里面只提供一個 hi 函數:
# pwcong 模塊的 __init__.py
# -*- coding: utf-8 -*-
def hi():
print("hi")
執行文件main.py直接import模塊:
# main.py
# -*- coding: utf-8 -*-
import pwcong
pwcong.hi()
接着我們運行一下main.py可以看到命令行窗口輸出了一句 hi ,第一種方式完成。
使用模塊方式為:先導入-》接着輸入
模塊.變量|函數, 如上面例子的 pwcong.hi()
第二種,通過sys模塊導入自定義模塊的path
如果執行文件和模塊不在同一目錄,這時候直接import是找不到自定義模塊的。如下圖:

- 執行文件main.py在main目錄下
- pwcong模塊在python目錄下
sys模塊是python內置的,因此我們導入自定義模塊的步驟如下:
-
先導入sys模塊
-
然后通過
sys.path.append(path)函數來導入自定義模塊所在的目錄 -
導入自定義模塊。
這時候 main.py 這樣寫:
# main.py
# -*- coding: utf-8 -*-
import sys
sys.path.append(r"C:\Users\Pwcong\Desktop\python")
import pwcong
pwcong.hi()
最后執行main.py文件,最終輸出 hi ,第二種方式完成。
第三種,通過pth文件找到自定義模塊
這個方法原理就是利用了系統變量,python會掃描path變量的路徑來導入模塊,可以在系統path里面添加。但是我還是推薦使用pth文件添加。
模塊和執行文件目錄結構跟上圖一樣:

- 執行文件main.py在main目錄下
- pwcong模塊在python目錄下
我們創建一個 module_pwcong.pth 文件,里面內容就是 pwcong模塊所在的目錄:
C:\Users\Pwcong\Desktop\python
將該 module_pwcong.pth 文件放到這里:
python安裝目錄\Python35\Lib\site-packages
例如我的:

然后 main.py 導入並使用自定義模塊:
# -*- coding: utf-8 -*-
import pwcong
pwcong.hi()
最后執行 main.py 文件,可以輸出 hi ,第三種方式完成。
結束
到這里三種導入自定義模塊的方式栗子就完成了,我寫的應該很詳細了吧 :)
