On 9-Aug-09, at 12:36 AM, T J wrote: >>>> z = array([1,2,3,4]) >>>> z[[1]] > array([1]) >>>> z[(1,)] > 1 > > I'm just curious: What is the motivation for this differing behavior?
When you address, i.e. an element in 2D array with a[2,3] you are actually indexing z with a tuple object (2,3). The 'comma' operator in Python creates a tuple, irrespective of whether you use parens or not. e.g. In [192]: z = {} In [193]: z[2,3] = 5 In [194]: z Out[194]: {(2, 3): 5} In the special case of scalar indices they're treated as if they are length-1 tuples. The behaviour you're seeing is the same as z[1]. David _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion