При использовании ellipsis
(...
) для индексации 1-мерного ndarray
я бы ожидал, что выражения X[0]
и X[..., 0]
будут семантически идентичными. Однако их строковые представления отличаются:Для 1-D `X`, в чем разница между` X [n] `и` X [..., n] `?
In [522]: X = arange(5)
In [523]: repr(X[0])
Out[523]: '0'
In [524]: repr(X[..., 0])
Out[524]: 'array(0)'
я не могу найти какие-либо другие различия, и в самом деле, они равны в соответствии с array_equal
:
In [526]: array_equal(X[0], X[..., 0])
Out[526]: True
Если они равны согласно array_equal
, почему у них разные представления строк?
Как говорит @CharlieHaley, различные представления строк связаны с тем, что один из них дает вам скаляр, а другой - 0-мерный массив NumPy. Я понятия не имею, почему '...' приводит к массиву 0-d. –