web-dev-qa-db-ja.com

NumPy ndarray dtypeのヒントを入力しますか?

関数に、NumPy ndarrayの型ヒントとそのdtypeの型ヒントを含めたいです。

たとえば、リストを使用すると、次のことができます...

def foo(bar: List[int]):
   ...

...barlistで構成されるintでなければならないという型のヒントを与えるため。

残念ながら、この構文はNumPy ndarrayに対して例外をスローします:

def foo(bar: np.ndarray[np.bool]):
   ...

> np.ndarray[np.bool]) (...) TypeError: 'type' object is not subscriptable

dtype固有の型ヒントをnp.ndarrayに与えることは可能ですか?

8
daniel451

私の知る限りでは、関数のシグネチャでnumpy配列型のヒントにdtypeを指定することはまだ不可能です。将来的には実装される予定です。現在の開発ステータスの詳細については、 numpy GitHub issue#737 および numpy-stubs GitHub を参照してください。

8
Xukrao

あなたはチェックアウトすることができます nptyping

from nptyping import Array

def foo(bar: Array[np.bool]):
   ...

または、型ヒントに文字列を使用することもできます。

def foo(bar: 'np.ndarray[np.bool]'):
   ...
14
R H