iT邦幫忙

2025 iThome 鐵人賽

DAY 17
0

今天要來說說模組 module,模組的用途是將功能封裝再一起,方便重複使用,舉個例子好了!

假設有一間『飲料店』,那麼會需要處理以下的事情:

  1. 進貨
  2. 製作飲料
  3. 結帳

如果所有的程式碼都寫在同一個檔案會造成不易閱讀、凌亂,雖然結果一樣能動,但會不好找到特定的功能!

更好的方法是將這些步驟進行模組拆分,讓一個檔案只做一件事情,在有需要的地方做引入import使用即可,這樣一來就像是把『進貨、製作飲料、結帳』分成不同的房間,每次需要做某件事時就到對應的房間內找工具。

模組化的好處

  1. 分類收納,每個檔案只放相關內容。
  2. 重複使用,功能放在特定的檔案中,別的地方要使用直接引入即可不用重新寫。
  3. 方便維護,假如結帳系統有 bug 只需要針對該部分程式碼進行除錯,不影響到製作飲料功能。
  4. 方便團隊合作,每個人負責不同功能,互不干擾。

模組的種類

  1. 內建模組
    Python 本身就提供的模組,不需要安裝或建立即可使用。
    像是ossysdatetimerandom這些都屬於內建模組。
import math
print(math.sqrt(16)) # 4
  1. 標準函式庫
    和 Python 一起安裝的官方模組,提供網路、檔案、資料處理等功能。
import json
  1. 第三方模組
    由非官方開發出的模組,需要透過pip安裝才能使用。
pip3 install requests
import requests
  1. 自訂模組
    將自己寫好的函式或類別存放在一個 Python 檔案中,在其他程式中可透過import引入該模組,即可使用該函式或類別。
# add.py
def add(a, b):
    return a + b
# main.py
import add

result1 = add(3, 5)
print("3 + 5 =", result1)

後續多查了些資料發現內建模組和標準函式庫模組的差別,ossysdatetime都屬於標準函式庫,需要import才能使用,就技術上來說不是『完全的內建模組』,為何會這麼說呢?
舉個例子,sys模組和 Python 執行器的關聯非常密切,有些功能在 Python 啟動時就存在了,它們幾乎隨時可用所以看起來像是『內建』的。

而真正的內建模組像是 Python 直譯器編譯進去的,可以直接做使用,不需要import,標準函式庫則是隨著 Python 安裝,需要import才能做使用。

那麼今天就介紹到這,明天見ㄅㄅ!


上一篇
筆記Day16:函式 Function
下一篇
筆記Day18:推推推導式
系列文
Python 學習筆記20
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言