Last active 9 months ago
gc 模組提供手動管理 Python 垃圾回收(Garbage Collection)的方法,例如調試記憶體洩漏、強制回收、調整閾值等,適用於長時間執行的應用或記憶體優化。
1 import gc
2
3 class CircularReference:
4 def __init__(self):
5 self.ref = self # 建立循環引用
6
7 # 建立一個有循環引用的物件
8 obj = CircularReference()
9
10 # 檢查物件是否被垃圾回收
Last active 9 months ago
pickle 模組可將 Python 物件轉換為二進位格式(序列化),並存儲到檔案或傳輸,之後可還原為原始物件(反序列化),適用於暫存數據、跨進程通訊或模型儲存。
1 import pickle
2
3 # 定義要序列化的物件(字典)
4 data = {
5 "name": "Timmy",
6 "age": 30,
7 "skills": ["Python", "Docker", "JavaScript"]
8 }
9
10 # 將物件序列化並存入檔案
Last active 9 months ago
addaudithook 可用來監聽 Python 內部的安全性相關事件,例如模組導入、檔案存取或執行系統命令,可用於安全監控、日誌記錄或限制不安全的操作。
1 import sys
2
3 def audit_hook(event, args):
4 print(f"Audit event: {event}, Arguments: {args}")
5
6 # 註冊審計鉤子
7 sys.addaudithook(audit_hook)
8
9 # 觸發一些事件
10 open("test.txt", "w").write("Hello") # 檔案寫入事件

timmy / 讀取 .env 環境變數

0 likes
0 forks
1 files
Last active 9 months ago
使用 dotenv 套件從 .env 檔案載入環境變數,適用於配置 API 金鑰、資料庫連線等設定,避免將敏感資訊直接寫入程式碼。
1 import os
2 from pathlib import Path
3 from dotenv import load_dotenv
4
5 BASE_DIR = Path(__file__).resolve().parent
6 ENV_PATH = BASE_DIR.parent / "config" / ".env"
7
8 load_dotenv(ENV_PATH)
9
10 # 讀取環境變數

timmy / Python 字串格式化

0 likes
0 forks
1 files
Last active 9 months ago
Python 提供多種字串格式化方法,f-string(Python 3.6+)更直觀且效能較佳,而 str.format() 適用於較舊版本。這些方法常用於動態組合字串,如建立 URL、日誌輸出或命令構造。
1 url = f"http://localhost:{args.port}"
2
3 url = "http://localhost:{}".format(args.port)