Ответ вы получите, потому что массив сглажен.И длина [1,2]
действительно равна 2. Я считаю, что причина, по которой это делается, состоит в том, чтобы просто предоставить пользователю максимальную гибкость.
То, что вы искали, может быть достигнуто следующим образом:
len(np.unique(a, axis=0))