关于“ModuleNotFoundError:没有名为‘numpy.typing’的模块”的问题

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)


Mar*_*tin 5

就我而言,我的版本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