Don't Treat One Like Another

Naufan Rusyda Faikar - Apr 3 '21 - - Dev Community

One day, someone has asked on Discord:

>>> import numpy as np
>>> my_list = [[1,2], [2,3], [3,4], [4,5]]
>>> [1,3] in my_list
False
>>> my_array = np.array(my_list)
>>> [1,3] in my_array
True
Enter fullscreen mode Exit fullscreen mode

Why numpy is doing so?

They are not the same as we already know. So, why do we expect them to behave the same? Every programming language, library, and whatsoever has its own implementation. True, it is all about different implementations, after all. We can even have this weirdo:

>>> a = 1
>>> b = 1
>>> a == b
True
>>> a is b
True
>>> a = 9999
>>> b = 9999
>>> a == b
True
>>> a is b
False
Enter fullscreen mode Exit fullscreen mode

See? So, it is not ever a good idea to treat anybody the same way, for you and I are unique~ Although, in some ways, we are still comparable.

By the way, if you are curious of the two, you can follow up by reading:

Take care!

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .