跳到正文
馬克工具箱

JSON 轉 Pydantic 模型

貼上 JSON,得到可以在 Python 中校驗和解析資料的 Pydantic 模型。鍵名轉成 snake_case 屬性並通過 alias 對應原始名稱,巢狀物件生成獨立的類。

在瀏覽器本地執行,輸入的內容和檔案都不會上傳

使用步驟

  1. 貼上 JSON 示例,或點「載入示例」。
  2. 設定根模型的名稱。
  3. 複製或下載生成的程式碼。

引數說明

根型別名稱
頂層模型類的名稱,巢狀類按鍵名命名。

使用示例

{"userName": "ada", "age": 36} 會生成:

class Root(BaseModel):
    user_name: str = Field(alias="userName")
    age: int

常見問題

適用於哪個版本?

Pydantic v2,Python 3.10 及以上,使用 list[str]、str | None 這樣的型別註解。

怎麼解析使用原始鍵名的資料?

改過名字的欄位都帶有 alias,所以 Root.model_validate(data) 可以直接接受 userName 這樣的原始鍵名。如果還想接受 Python 屬性名,在模型配置中開啟 populate_by_name。

鍵名是 Python 關鍵字怎麼辦?

會在後面加下劃線,例如鍵 class 變成屬性 class_,並設定 alias="class"。

JSON 資料會上傳嗎?

不會。型別在瀏覽器中生成,包含真實資料的介面返回也不會離開你的裝置。

隱私說明

本工具完全在瀏覽器中執行,檔案和文字都在你的裝置上處理,不會上傳到我們的伺服器。

相關工具