我在Python导入中遇到了一个奇怪的情况。有人知道这是如何工作的吗?
我有:
import numpy as np
values: Union[Sequence[int], np.typing.NDArray]
probs: Union[Sequence[float], np.typing.NDArray]
现在失败了,因为np.typing不能以这种方式导入。我猜是因为init file中没有定义它吧?
好的,现在我将其替换为:
import numpy as np
import numpy.typing as npt
values: Union[Sequence[int], npt.NDArray]
probs: Union[Sequence[float], np.typing.NDArray]
现在它可以工作了--但是为什么它没有在“probs”行上中断呢?在那里,我仍然有以前给我一个错误的同一个语句。是什么改变了它的工作呢?
- 上下文:Numpy 1.21.3,Python 3.7*
- 注意:我知道我可以简单地替换这两个语句,但我对为什么这样做不会给予错误感到惊讶,并想知道这是如何工作的。*
1条答案
按热度按时间dgjrabp21#
运行导入后
解释器“找出”NP的附加部分。
您可以通过以下方式进行检查: