numpy 和 mypy:索引 NDArray 返回 Any 类型

gsh*_*kov 7 python arrays numpy mypy

是否可以索引numpy数组至少接收相同的类型?

运行以下代码会mypy显示以下类型:

import numpy as np
from numpy.typing import NDArray

a = np.array([1, 2, 3], dtype=np.int64)
reveal_type(a)  # numpy.ndarray[Any, Any]

sub_a = a[:1]
reveal_type(sub_a)  # Any

b: NDArray[np.int64] = np.array([1, 2, 3], dtype=np.int64)
reveal_type(b)  # numpy.ndarray[Any, numpy.dtype[numpy.signedinteger[numpy.typing._64Bit]]]

sub_b = b[:1]
reveal_type(sub_b)  # Any
Run Code Online (Sandbox Code Playgroud)

谢谢。