如何使 Python 類別 JSON 可序列化
序列化是將物件轉換為可以儲存或傳輸的格式的過程。 JSON(JavaScript 物件表示法)是一種流行的資料格式,用於在應用程式之間傳輸資料。
要將 Python 類別序列化為 JSON,您需要實作 dict特殊方法。 dict 傳回包含物件屬性的字典。然後,您可以使用 json.dumps() 函數將字典序列化為 JSON。
例如:
class FileItem: def __init__(self, fname): self.fname = fname
要將FileItem 類別序列化為JSON,您可以將dict 特殊方法實作如下:
class FileItem: def __init__(self, fname): self.fname = fname def __dict__(self): return {'fname': self.fname}
然後可以使用json.dumps() 函數將FileItem 對象序列化為JSON:
import json x = FileItem('/foo/bar') json_data = json.dumps(x, default=lambda o: o.__dict__)
默認值=lambda o: o.__dict__ 參數是必需的,因為FileItem 類別不是原生JSON 可序列化。此參數告訴 json.dumps() 函數在序列化物件之前呼叫物件的 dict 方法。
產生的 JSON 資料將是:
{"fname": "/foo/bar"}
以上是如何讓 Python 類別 JSON 可序列化?的詳細內容。更多資訊請關注PHP中文網其他相關文章!