Pydantic中BaseModel的默认值:为什么可变对象在不同实例间相互独立?

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生成,不代表软件指南立场。本站不负任何法律责任。

如若转载请注明出处:http://www.down96.com/tutorials/8051.html

热心网友热心网友
上一篇 2025-04-11 15:53
下一篇 2025-04-11 15:53

相关推荐

本站[软件指南]所有内容来自互联网投稿或AI智能生成,并不代表软件指南的立场。