con*_*osz 31 python annotations numpy
我正在尝试导入ArrayLike do from numpy.typing import ArrayLike,并且收到标题中提到的错误:
ModuleNotFoundError: No module named 'numpy.typing'
我知道我可以简单地import numpy.typing as npt按照文档所示进行编写,但我希望能够简单地导入我想要使用的类型。这也不是我第一次遇到这种情况:我想导入特定的方法/类,但我被迫使用昵称导入父模块,否则我会收到错误。为什么?
Ray*_*out 18
将上述评论中的决议重新发布为社区 wiki,以获得更好的可见性:
numpy 类型模块在 numpy 1.20 中引入
numpy通过在笔记本开头运行以下命令来确保您拥有正确的版本:
%pip install -U numpy
Run Code Online (Sandbox Code Playgroud)
就我而言,我的版本numpy是正确的,但我无法消除错误:
AttributeError: module 'numpy' has no attribute 'typing'
Run Code Online (Sandbox Code Playgroud)
有用的是直接导入文件顶部的模块:
import numpy.typing
Run Code Online (Sandbox Code Playgroud)
然后我就可以使用numpy.typing.ArrayLikeor np.typing.ArrayLike。