gpt4 book ai didi

python-3.x - pydantic 初始化 numpy ndarray

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

如何在使用 pydantic 时初始化 ndarray
此代码抛出 ValueError:具有多个元素的数组的真值不明确。使用 a.any() 或 a.all()

from pydantic.dataclasses import dataclass
import numpy as np

@dataclass
class TestNumpyArray:
numpyArray: np.ndarray = np.zeros(10)

testNumpyArray = TestNumpyArray()

最佳答案

您需要提供 default_factoryField 声明。

请注意,您不能在 Pydantic 数据类中使用任意类型,因此您可能需要扩展 BaseModel:

from pydantic import BaseModel, Field
import numpy as np

class TestNumpyArray(BaseModel):
numpyArray: np.ndarray = Field(default_factory=lambda: np.zeros(10))

class Config:
arbitrary_types_allowed = True

testNumpyArray = TestNumpyArray()

您还可以将非 Pydantic 数据类与 dataclasses.field(default_factory=...) 一起使用。

关于python-3.x - pydantic 初始化 numpy ndarray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70306311/

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