在Python中,模塊(module)和庫(library)是組織和復用代碼的重要概念。模塊是一個包含 Python代碼的文件,通常用來封裝函數、類和變量。而庫則是包含多個模塊的集合,通常用於實現特定功能。Python提供了豐富的標準庫,也允許開發者創建自定義模塊和庫。
什麼是模塊?
模塊是Python文件,擁有.py
擴展名,包含函數、類和變量。模塊可以被其他模塊或腳本導入,從而實現代碼重用。
使用import
導入模塊
可以使用import
關鍵字來導入模塊,並訪問模塊中的函數、類和變量。
# 導入 math 模塊,並調用其 sqrt 函數
import math
print(math.sqrt(16)) # 輸出: 4.0
from
導入特定的函數或變量from ... import
語法。# 從 math 模塊中只導入 sqrt 函數
from math import sqrt
print(sqrt(16)) # 輸出: 4.0
as
為模塊或函數設置別名。# 導入 math 模塊並給它設置別名 m
import math as m
print(m.sqrt(25)) # 輸出: 5.0
你也可以創建自己的模塊,方法是將Python代碼保存在一個.py
文件中,然後在其他腳本中導入該模塊。
步驟:
mymodule.py
。mymodule.py
中編寫代碼。import
來導入這個模塊。mymodule.py
:def greet(name):
return f"Hello, {name}!"
在另一個 Python 文件中導入並使用mymodule
:
import mymodule
print(mymodule.greet("Alice")) # 輸出: Hello, Alice!
庫是一組相關模塊的集合,用來實現特定的功能。Python的標準庫已經提供了豐富的模塊來處理各種任務,如文件操作、網絡通訊、數學運算等。此外,還有大量的第三方庫可以幫助你實現特定的應用場景。
os:處理操作系統相關功能,如文件系統操作。
sys:處理 Python 解釋器相關的功能,如參數和環境變量。
math:提供數學相關的函數,如平方根、對數、三角函數等。
random:生成隨機數或進行隨機選擇。
datetime:處理日期和時間。
import os
print(os.getcwd()) # 輸出當前工作目錄
import sys
print(sys.version) # 輸出 Python 版本
import random
print(random.randint(1, 10)) # 輸出 1 到 10 之間的隨機整數
pip
來管理。NumPy:數值計算的強大庫。
Pandas:數據分析和處理庫。
Matplotlib:數據可視化庫。
Requests:處理HTTP請求的庫。
TensorFlow、PyTorch:機器學習框架。
pip
安裝第三方庫pip
命令安裝、更新和管理第三方庫。# 安裝第三方庫(例如 requests)
pip install requests
# 更新庫
pip install --upgrade requests
# 刪除庫
pip uninstall requests
requests
庫進行HTTP請求import requests
response = requests.get('https://api.github.com')
print(response.status_code) # 輸出: 200
print(response.json()) # 輸出 JSON 格式的響應內容
當導入模塊時,Python會根據系統的模塊搜索路徑來查找模塊。這些路徑存儲在sys.path
中,並且包含當前工作目錄、安裝的標準庫目錄以及安裝的第三方庫目錄。
import sys
print(sys.path)
如果需要手動添加模塊路徑,可以使用sys.path.append()
方法。
import sys
sys.path.append('/path/to/your/module')
當模塊越來越多時,可以將相關模塊組織成包。 包(package) 是包含多個模塊的目錄,並且該目錄下需要包含一個名為__init__.py
的文件。
my_package/
__init__.py
module1.py
module2.py
from my_package import module1