gpt4 book ai didi

python - 允许 BaseModel pydantic 的位置参数

转载 作者:行者123 更新时间:2023-12-05 03:20:31 25 4
gpt4 key购买 nike

我有一个包含所有必要参数的类。但是,对于 init 函数,它要求关键字参数,并且不接受位置参数。所以,我的问题是:我可以在 pydantic.BaseModel 的配置中更改某些内容以允许位置参数吗?

这是我类(class)的一个例子:

class Foo(BaseModel):
a: int
b: Optional[str]
c: Optional[float]

当我初始化类时,我需要传递关键字参数: Image of a class parameters

所以,我不能像这样初始化类:

Foo(1,2,2.5)
# instead, I should init it like this:
Foo(a=1,b=2,c=2.5)

因此,我需要能够将位置关键字传递给类。可能吗?

最佳答案

覆盖 __init__ 方法的示例,带有在 pycharm 中工作的类型提示

class Foo(BaseModel):
a: int
b: Optional[str]
c: Optional[float]

def __init__(self, a: int,
b: Optional[str] = None,
c: Optional[float] = None,
**kwargs) -> None:
super(Foo, self).__init__(a=a, b=b, c=c, **kwargs)

关于python - 允许 BaseModel pydantic 的位置参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73156982/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com