亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

pydantic怎么去掉未傳值的字段

發布時間:2022-12-05 16:45:58 來源:億速云 閱讀:165 作者:iii 欄目:編程語言

這篇“pydantic怎么去掉未傳值的字段”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“pydantic怎么去掉未傳值的字段”文章吧。

前言

使用 pydantic 定義數據模型,有些非必填的字段,我們希望在實例化時未傳值的字段去掉,這樣可以取值一些為None的字段。

遇到問題

age 和 address 是非必填字段

class User(BaseModel):
    name: str = ...
    tel: str = ...
    age: int = Field(None,)
    address: str = Field(None)


user = User(
    name='yoyo',
    tel='10086'
)
print(user.dict()) # {'name': 'yoyo', 'tel': '10086', 'age': None, 'address': None}

得到的結果, 沒有傳的字段會給到默認值

{'name': 'yoyo', 'tel': '10086', 'age': None, 'address': None}

exclude_unset去掉默認字段

可以通過 skip_defaults=True 參數跳過默認的設置項

print(user.dict(skip_defaults=True))

得到結果會有個警告:"skip_defaults" is deprecated and replaced by "exclude_unset"

DeprecationWarning: User.dict(): "skip_defaults" is deprecated and replaced by "exclude_unset"
  print(user.dict(skip_defaults=True)) # {'name': 'yoyo', 'tel': '10086', 'age': None, 'address': None}

{'name': 'yoyo', 'tel': '10086'}

"skip_defaults" 方法已經被 "exclude_unset" 替代了

print(user.dict(exclude_unset=True))

運行結果

{'name': 'yoyo', 'tel': '10086'}

這樣就去掉了默認值為None的了。

以上就是關于“pydantic怎么去掉未傳值的字段”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

易门县| 奉节县| 浮山县| 柳州市| 潼南县| 枝江市| 绥棱县| 乌鲁木齐市| 凤翔县| 青州市| 离岛区| 瑞昌市| 巴中市| 开原市| 栾川县| 陆良县| 葵青区| 大同市| 湖北省| 益阳市| 随州市| 全州县| 庆云县| 获嘉县| 嵊泗县| 宁国市| 巴彦淖尔市| 汝南县| 赤峰市| 多伦县| 白银市| 陕西省| 巴中市| 克东县| 弥勒县| 武城县| 务川| 鹿邑县| 民县| 民乐县| 阿鲁科尔沁旗|