comparisons.py 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301
  1. from __future__ import annotations
  2. from typing import Any
  3. import numpy as np
  4. c16 = np.complex128()
  5. f8 = np.float64()
  6. i8 = np.int64()
  7. u8 = np.uint64()
  8. c8 = np.complex64()
  9. f4 = np.float32()
  10. i4 = np.int32()
  11. u4 = np.uint32()
  12. dt = np.datetime64(0, "D")
  13. td = np.timedelta64(0, "D")
  14. b_ = np.bool_()
  15. b = bool()
  16. c = complex()
  17. f = float()
  18. i = int()
  19. SEQ = (0, 1, 2, 3, 4)
  20. AR_b: np.ndarray[Any, np.dtype[np.bool_]] = np.array([True])
  21. AR_u: np.ndarray[Any, np.dtype[np.uint32]] = np.array([1], dtype=np.uint32)
  22. AR_i: np.ndarray[Any, np.dtype[np.int_]] = np.array([1])
  23. AR_f: np.ndarray[Any, np.dtype[np.float_]] = np.array([1.0])
  24. AR_c: np.ndarray[Any, np.dtype[np.complex_]] = np.array([1.0j])
  25. AR_m: np.ndarray[Any, np.dtype[np.timedelta64]] = np.array([np.timedelta64("1")])
  26. AR_M: np.ndarray[Any, np.dtype[np.datetime64]] = np.array([np.datetime64("1")])
  27. AR_O: np.ndarray[Any, np.dtype[np.object_]] = np.array([1], dtype=object)
  28. # Arrays
  29. AR_b > AR_b
  30. AR_b > AR_u
  31. AR_b > AR_i
  32. AR_b > AR_f
  33. AR_b > AR_c
  34. AR_u > AR_b
  35. AR_u > AR_u
  36. AR_u > AR_i
  37. AR_u > AR_f
  38. AR_u > AR_c
  39. AR_i > AR_b
  40. AR_i > AR_u
  41. AR_i > AR_i
  42. AR_i > AR_f
  43. AR_i > AR_c
  44. AR_f > AR_b
  45. AR_f > AR_u
  46. AR_f > AR_i
  47. AR_f > AR_f
  48. AR_f > AR_c
  49. AR_c > AR_b
  50. AR_c > AR_u
  51. AR_c > AR_i
  52. AR_c > AR_f
  53. AR_c > AR_c
  54. AR_m > AR_b
  55. AR_m > AR_u
  56. AR_m > AR_i
  57. AR_b > AR_m
  58. AR_u > AR_m
  59. AR_i > AR_m
  60. AR_M > AR_M
  61. AR_O > AR_O
  62. 1 > AR_O
  63. AR_O > 1
  64. # Time structures
  65. dt > dt
  66. td > td
  67. td > i
  68. td > i4
  69. td > i8
  70. td > AR_i
  71. td > SEQ
  72. # boolean
  73. b_ > b
  74. b_ > b_
  75. b_ > i
  76. b_ > i8
  77. b_ > i4
  78. b_ > u8
  79. b_ > u4
  80. b_ > f
  81. b_ > f8
  82. b_ > f4
  83. b_ > c
  84. b_ > c16
  85. b_ > c8
  86. b_ > AR_i
  87. b_ > SEQ
  88. # Complex
  89. c16 > c16
  90. c16 > f8
  91. c16 > i8
  92. c16 > c8
  93. c16 > f4
  94. c16 > i4
  95. c16 > b_
  96. c16 > b
  97. c16 > c
  98. c16 > f
  99. c16 > i
  100. c16 > AR_i
  101. c16 > SEQ
  102. c16 > c16
  103. f8 > c16
  104. i8 > c16
  105. c8 > c16
  106. f4 > c16
  107. i4 > c16
  108. b_ > c16
  109. b > c16
  110. c > c16
  111. f > c16
  112. i > c16
  113. AR_i > c16
  114. SEQ > c16
  115. c8 > c16
  116. c8 > f8
  117. c8 > i8
  118. c8 > c8
  119. c8 > f4
  120. c8 > i4
  121. c8 > b_
  122. c8 > b
  123. c8 > c
  124. c8 > f
  125. c8 > i
  126. c8 > AR_i
  127. c8 > SEQ
  128. c16 > c8
  129. f8 > c8
  130. i8 > c8
  131. c8 > c8
  132. f4 > c8
  133. i4 > c8
  134. b_ > c8
  135. b > c8
  136. c > c8
  137. f > c8
  138. i > c8
  139. AR_i > c8
  140. SEQ > c8
  141. # Float
  142. f8 > f8
  143. f8 > i8
  144. f8 > f4
  145. f8 > i4
  146. f8 > b_
  147. f8 > b
  148. f8 > c
  149. f8 > f
  150. f8 > i
  151. f8 > AR_i
  152. f8 > SEQ
  153. f8 > f8
  154. i8 > f8
  155. f4 > f8
  156. i4 > f8
  157. b_ > f8
  158. b > f8
  159. c > f8
  160. f > f8
  161. i > f8
  162. AR_i > f8
  163. SEQ > f8
  164. f4 > f8
  165. f4 > i8
  166. f4 > f4
  167. f4 > i4
  168. f4 > b_
  169. f4 > b
  170. f4 > c
  171. f4 > f
  172. f4 > i
  173. f4 > AR_i
  174. f4 > SEQ
  175. f8 > f4
  176. i8 > f4
  177. f4 > f4
  178. i4 > f4
  179. b_ > f4
  180. b > f4
  181. c > f4
  182. f > f4
  183. i > f4
  184. AR_i > f4
  185. SEQ > f4
  186. # Int
  187. i8 > i8
  188. i8 > u8
  189. i8 > i4
  190. i8 > u4
  191. i8 > b_
  192. i8 > b
  193. i8 > c
  194. i8 > f
  195. i8 > i
  196. i8 > AR_i
  197. i8 > SEQ
  198. u8 > u8
  199. u8 > i4
  200. u8 > u4
  201. u8 > b_
  202. u8 > b
  203. u8 > c
  204. u8 > f
  205. u8 > i
  206. u8 > AR_i
  207. u8 > SEQ
  208. i8 > i8
  209. u8 > i8
  210. i4 > i8
  211. u4 > i8
  212. b_ > i8
  213. b > i8
  214. c > i8
  215. f > i8
  216. i > i8
  217. AR_i > i8
  218. SEQ > i8
  219. u8 > u8
  220. i4 > u8
  221. u4 > u8
  222. b_ > u8
  223. b > u8
  224. c > u8
  225. f > u8
  226. i > u8
  227. AR_i > u8
  228. SEQ > u8
  229. i4 > i8
  230. i4 > i4
  231. i4 > i
  232. i4 > b_
  233. i4 > b
  234. i4 > AR_i
  235. i4 > SEQ
  236. u4 > i8
  237. u4 > i4
  238. u4 > u8
  239. u4 > u4
  240. u4 > i
  241. u4 > b_
  242. u4 > b
  243. u4 > AR_i
  244. u4 > SEQ
  245. i8 > i4
  246. i4 > i4
  247. i > i4
  248. b_ > i4
  249. b > i4
  250. AR_i > i4
  251. SEQ > i4
  252. i8 > u4
  253. i4 > u4
  254. u8 > u4
  255. u4 > u4
  256. b_ > u4
  257. b > u4
  258. i > u4
  259. AR_i > u4
  260. SEQ > u4