如何使用泛型数组键入numpy函数

2024-09-19 23:28:12 发布

您现在位置:Python中文网/ 问答频道 /正文

根据numpy documentation,要声明泛型numpy类型,我应该使用np.floating[T]T = TypeVar("T", bound=npt.NBitBase)。然后NDarray采用标量类型。如何将这两者结合起来,创建一个接受浮点数组的函数?以下是:

T = TypeVar("T", bound=npt.NBitBase)


def entropy(x: npt.NDArray[np.floating[T]]) -> np.floating[T]:
    return cast(np.floating[T], np.sum(x * np.log(x)))

给我:TypeError: 'type' object is not subscriptable


Tags: numpy声明类型documentationnp数组泛型浮点