pydantic 中的可变对象默认值行为探究
本文将探讨 pydantic 中可变对象(例如列表)的默认值行为,以及为什么在使用 basemodel 时,多次实例化对象后,可变对象的修改不会影响其他实例。
我们来看一段代码:
from datetime import datetimefrom typing import list, optionalfrom pydantic import basemodelclass user(basemodel): friends: list[int] = []user_1 = user()user_1.friends.append(1)print(user_1.friends) # 输出:[1]user_2 = user()print(user_2.friends) # 输出:[]
登录后复制
本文来自互联网或AI生成,不代表软件指南立场。本站不负任何法律责任。