Utoljára aktív 10 months ago

此 Mixin 類別為 Python 類別提供簡單的日誌紀錄功能,可用於追蹤物件的行為變化,適用於擴展任何需要日誌記錄的類別,如用戶管理、系統監控等應用。

logging_mixin_example.py Eredeti
1import datetime
2
3class LoggingMixin:
4 """ 提供日誌功能的 Mixin 類別 """
5
6 def log(self, message):
7 """ 簡單的日誌紀錄方法 """
8 timestamp = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
9 print(f"[{timestamp}] {self.__class__.__name__}: {message}")
10
11class User(LoggingMixin):
12 """ 使用 LoggingMixin 的 User 類別 """
13
14 def __init__(self, name):
15 self.name = name
16 self.log(f"User '{self.name}' 已建立")
17
18 def update_name(self, new_name):
19 self.log(f"名稱從 '{self.name}' 變更為 '{new_name}'")
20 self.name = new_name
21
22# 測試範例
23if __name__ == "__main__":
24 user = User("Alice") # 會自動記錄 "User 'Alice' 已建立"
25 user.update_name("Bob") # 會記錄名稱變更的訊息
26