numeric.pyi 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. """
  2. Tests for :mod:`core.numeric`.
  3. Does not include tests which fall under ``array_constructors``.
  4. """
  5. import numpy as np
  6. import numpy.typing as npt
  7. class SubClass(npt.NDArray[np.int64]):
  8. ...
  9. i8: np.int64
  10. AR_b: npt.NDArray[np.bool_]
  11. AR_u8: npt.NDArray[np.uint64]
  12. AR_i8: npt.NDArray[np.int64]
  13. AR_f8: npt.NDArray[np.float64]
  14. AR_c16: npt.NDArray[np.complex128]
  15. AR_m: npt.NDArray[np.timedelta64]
  16. AR_O: npt.NDArray[np.object_]
  17. B: list[int]
  18. C: SubClass
  19. reveal_type(np.count_nonzero(i8)) # E: int
  20. reveal_type(np.count_nonzero(AR_i8)) # E: int
  21. reveal_type(np.count_nonzero(B)) # E: int
  22. reveal_type(np.count_nonzero(AR_i8, keepdims=True)) # E: Any
  23. reveal_type(np.count_nonzero(AR_i8, axis=0)) # E: Any
  24. reveal_type(np.isfortran(i8)) # E: bool
  25. reveal_type(np.isfortran(AR_i8)) # E: bool
  26. reveal_type(np.argwhere(i8)) # E: ndarray[Any, dtype[{intp}]]
  27. reveal_type(np.argwhere(AR_i8)) # E: ndarray[Any, dtype[{intp}]]
  28. reveal_type(np.flatnonzero(i8)) # E: ndarray[Any, dtype[{intp}]]
  29. reveal_type(np.flatnonzero(AR_i8)) # E: ndarray[Any, dtype[{intp}]]
  30. reveal_type(np.correlate(B, AR_i8, mode="valid")) # E: ndarray[Any, dtype[signedinteger[Any]]]
  31. reveal_type(np.correlate(AR_i8, AR_i8, mode="same")) # E: ndarray[Any, dtype[signedinteger[Any]]]
  32. reveal_type(np.correlate(AR_b, AR_b)) # E: ndarray[Any, dtype[bool_]]
  33. reveal_type(np.correlate(AR_b, AR_u8)) # E: ndarray[Any, dtype[unsignedinteger[Any]]]
  34. reveal_type(np.correlate(AR_i8, AR_b)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  35. reveal_type(np.correlate(AR_i8, AR_f8)) # E: ndarray[Any, dtype[floating[Any]]]
  36. reveal_type(np.correlate(AR_i8, AR_c16)) # E: ndarray[Any, dtype[complexfloating[Any, Any]]]
  37. reveal_type(np.correlate(AR_i8, AR_m)) # E: ndarray[Any, dtype[timedelta64]]
  38. reveal_type(np.correlate(AR_O, AR_O)) # E: ndarray[Any, dtype[object_]]
  39. reveal_type(np.convolve(B, AR_i8, mode="valid")) # E: ndarray[Any, dtype[signedinteger[Any]]]
  40. reveal_type(np.convolve(AR_i8, AR_i8, mode="same")) # E: ndarray[Any, dtype[signedinteger[Any]]]
  41. reveal_type(np.convolve(AR_b, AR_b)) # E: ndarray[Any, dtype[bool_]]
  42. reveal_type(np.convolve(AR_b, AR_u8)) # E: ndarray[Any, dtype[unsignedinteger[Any]]]
  43. reveal_type(np.convolve(AR_i8, AR_b)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  44. reveal_type(np.convolve(AR_i8, AR_f8)) # E: ndarray[Any, dtype[floating[Any]]]
  45. reveal_type(np.convolve(AR_i8, AR_c16)) # E: ndarray[Any, dtype[complexfloating[Any, Any]]]
  46. reveal_type(np.convolve(AR_i8, AR_m)) # E: ndarray[Any, dtype[timedelta64]]
  47. reveal_type(np.convolve(AR_O, AR_O)) # E: ndarray[Any, dtype[object_]]
  48. reveal_type(np.outer(i8, AR_i8)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  49. reveal_type(np.outer(B, AR_i8)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  50. reveal_type(np.outer(AR_i8, AR_i8)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  51. reveal_type(np.outer(AR_i8, AR_i8, out=C)) # E: SubClass
  52. reveal_type(np.outer(AR_b, AR_b)) # E: ndarray[Any, dtype[bool_]]
  53. reveal_type(np.outer(AR_b, AR_u8)) # E: ndarray[Any, dtype[unsignedinteger[Any]]]
  54. reveal_type(np.outer(AR_i8, AR_b)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  55. reveal_type(np.convolve(AR_i8, AR_f8)) # E: ndarray[Any, dtype[floating[Any]]]
  56. reveal_type(np.outer(AR_i8, AR_c16)) # E: ndarray[Any, dtype[complexfloating[Any, Any]]]
  57. reveal_type(np.outer(AR_i8, AR_m)) # E: ndarray[Any, dtype[timedelta64]]
  58. reveal_type(np.outer(AR_O, AR_O)) # E: ndarray[Any, dtype[object_]]
  59. reveal_type(np.tensordot(B, AR_i8)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  60. reveal_type(np.tensordot(AR_i8, AR_i8)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  61. reveal_type(np.tensordot(AR_i8, AR_i8, axes=0)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  62. reveal_type(np.tensordot(AR_i8, AR_i8, axes=(0, 1))) # E: ndarray[Any, dtype[signedinteger[Any]]]
  63. reveal_type(np.tensordot(AR_b, AR_b)) # E: ndarray[Any, dtype[bool_]]
  64. reveal_type(np.tensordot(AR_b, AR_u8)) # E: ndarray[Any, dtype[unsignedinteger[Any]]]
  65. reveal_type(np.tensordot(AR_i8, AR_b)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  66. reveal_type(np.tensordot(AR_i8, AR_f8)) # E: ndarray[Any, dtype[floating[Any]]]
  67. reveal_type(np.tensordot(AR_i8, AR_c16)) # E: ndarray[Any, dtype[complexfloating[Any, Any]]]
  68. reveal_type(np.tensordot(AR_i8, AR_m)) # E: ndarray[Any, dtype[timedelta64]]
  69. reveal_type(np.tensordot(AR_O, AR_O)) # E: ndarray[Any, dtype[object_]]
  70. reveal_type(np.isscalar(i8)) # E: bool
  71. reveal_type(np.isscalar(AR_i8)) # E: bool
  72. reveal_type(np.isscalar(B)) # E: bool
  73. reveal_type(np.roll(AR_i8, 1)) # E: ndarray[Any, dtype[{int64}]]
  74. reveal_type(np.roll(AR_i8, (1, 2))) # E: ndarray[Any, dtype[{int64}]]
  75. reveal_type(np.roll(B, 1)) # E: ndarray[Any, dtype[Any]]
  76. reveal_type(np.rollaxis(AR_i8, 0, 1)) # E: ndarray[Any, dtype[{int64}]]
  77. reveal_type(np.moveaxis(AR_i8, 0, 1)) # E: ndarray[Any, dtype[{int64}]]
  78. reveal_type(np.moveaxis(AR_i8, (0, 1), (1, 2))) # E: ndarray[Any, dtype[{int64}]]
  79. reveal_type(np.cross(B, AR_i8)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  80. reveal_type(np.cross(AR_i8, AR_i8)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  81. reveal_type(np.cross(AR_b, AR_u8)) # E: ndarray[Any, dtype[unsignedinteger[Any]]]
  82. reveal_type(np.cross(AR_i8, AR_b)) # E: ndarray[Any, dtype[signedinteger[Any]]]
  83. reveal_type(np.cross(AR_i8, AR_f8)) # E: ndarray[Any, dtype[floating[Any]]]
  84. reveal_type(np.cross(AR_i8, AR_c16)) # E: ndarray[Any, dtype[complexfloating[Any, Any]]]
  85. reveal_type(np.cross(AR_O, AR_O)) # E: ndarray[Any, dtype[object_]]
  86. reveal_type(np.indices([0, 1, 2])) # E: ndarray[Any, dtype[{int_}]]
  87. reveal_type(np.indices([0, 1, 2], sparse=True)) # E: tuple[ndarray[Any, dtype[{int_}]], ...]
  88. reveal_type(np.indices([0, 1, 2], dtype=np.float64)) # E: ndarray[Any, dtype[{float64}]]
  89. reveal_type(np.indices([0, 1, 2], sparse=True, dtype=np.float64)) # E: tuple[ndarray[Any, dtype[{float64}]], ...]
  90. reveal_type(np.indices([0, 1, 2], dtype=float)) # E: ndarray[Any, dtype[Any]]
  91. reveal_type(np.indices([0, 1, 2], sparse=True, dtype=float)) # E: tuple[ndarray[Any, dtype[Any]], ...]
  92. reveal_type(np.binary_repr(1)) # E: str
  93. reveal_type(np.base_repr(1)) # E: str
  94. reveal_type(np.allclose(i8, AR_i8)) # E: bool
  95. reveal_type(np.allclose(B, AR_i8)) # E: bool
  96. reveal_type(np.allclose(AR_i8, AR_i8)) # E: bool
  97. reveal_type(np.isclose(i8, i8)) # E: bool_
  98. reveal_type(np.isclose(i8, AR_i8)) # E: ndarray[Any, dtype[bool_]]
  99. reveal_type(np.isclose(B, AR_i8)) # E: ndarray[Any, dtype[bool_]]
  100. reveal_type(np.isclose(AR_i8, AR_i8)) # E: ndarray[Any, dtype[bool_]]
  101. reveal_type(np.array_equal(i8, AR_i8)) # E: bool
  102. reveal_type(np.array_equal(B, AR_i8)) # E: bool
  103. reveal_type(np.array_equal(AR_i8, AR_i8)) # E: bool
  104. reveal_type(np.array_equiv(i8, AR_i8)) # E: bool
  105. reveal_type(np.array_equiv(B, AR_i8)) # E: bool
  106. reveal_type(np.array_equiv(AR_i8, AR_i8)) # E: bool