Ich bin ein wenig süchtig nach den Typhinweisen und Typprüfungen von Numpy
, also lasse ich es als Memorandum.
Dieses Mal verwende ich eine Bibliothek zum Eingeben von numpy namens "nptyping". Repository: GitHub --ramonhagenaars / nptyping
Die beiden unteren sind "True", auch wenn das Element nicht "int" ist. ** (Any
wird aus der Standardbibliothek Typing
importiert) **
vec = np.array([1, 2, 3], int)
isinstance(vec, NDArray[3, int]) # True
isinstance(vec, NDArray[(3,), int]) # True
isinstance(vec, NDArray[(3, ...), int]) # True
isinstance(vec, NDArray[(3,), Any]) # True
isinstance(vec, NDArray[3]) # True
Oben befindet sich die Matrix $ (any) \ times3 $. Die beiden unteren sind "True", auch wenn sie nicht "int" sind. ** (Any
wird aus der Standardbibliothek Typing
importiert) **
mat = np.array([[1, 2, 3], [4, 5, 6]], int)
isinstance(mat, NDArray[(Any, 3), int]) # True
isinstance(mat, NDArray[(2, 3), int]) # True
isinstance(mat, NDArray[2, 3]) # True
isinstance(mat, NDArray[(2, 3), Any]) # True