Last active 9 months ago
functools 模組提供多種函式工具,如記憶化(lru_cache)、部分應用(partial)和函式包裝(wraps),適用於提升效能、簡化回呼函式與裝飾器開發。
1 import functools
2
3 @functools.lru_cache(maxsize=5)
4 def fibonacci(n):
5 """計算費氏數列(具備快取功能)"""
6 if n < 2:
7 return n
8 return fibonacci(n - 1) + fibonacci(n - 2)
9
10 print(fibonacci(10)) # 快速計算

timmy / 使用 ABC 定義抽象類別

0 likes
0 forks
1 files
Last active 9 months ago
ABC(Abstract Base Class)允許定義抽象類別,強制子類別實作特定方法,適用於建立統一的介面規範,確保繼承的類別都遵守特定的行為。
1 from abc import ABC, abstractmethod
2
3 # 定義抽象類別
4 class Animal(ABC):
5 @abstractmethod
6 def make_sound(self) -> str:
7 """所有動物都必須實作此方法"""
8 pass
9
10 # 繼承並實作抽象方法

timmy / 使用 PIL(Pillow)處理影像

0 likes
0 forks
1 files
Last active 9 months ago
PIL(Pillow)是一個強大的 Python 影像處理庫,可用於開啟、編輯、轉換與儲存影像,適用於影像分析、自動化處理與視覺化應用。
1 from PIL import Image
2
3 # 開啟影像
4 image = Image.open("example.jpg")
5
6 # 顯示影像
7 image.show()
8
9 # 轉換為灰階
10 gray_image = image.convert("L")
Last active 9 months ago
zmq(ZeroMQ)是一個高效能的訊息佇列庫,可用於進程間通訊(IPC)、分散式系統與即時訊息傳輸,適用於微服務架構、物聯網(IoT)和高效能計算應用。
1 import zmq
2
3 # 設置 ZeroMQ 上下文
4 context = zmq.Context()
5 socket = context.socket(zmq.REP) # 設定為回應 (REP) 模式
6 socket.bind("tcp://*:5555") # 監聽 5555 埠口
7
8 print("伺服器啟動,等待客戶端請求...")
9
10 while True: