working with numpy object arrays
![](https://secure.gravatar.com/avatar/8d600bce067dd1c418837465660e3655.jpg?s=120&d=mm&r=g)
In the example code below, is it possible to return an array of all the ".a" values of the MyClass objects as stored in the object array "a"? I am successfully able to retrieve the "a" attributes if I loop through the array elements one by one, but I cannot do a whole-array operation to retrieve the "a" attributes. Is there any way to retrieve all the "a" attributes of the MyClass objects all at once, or do I have to loop through all elements of "array" one-by-one? Thanks for any help, Catherine import numpy class MyClass(object): def __init__(self, a): self.a = a def add(self, b, c): self.a += b+c def return_a(self): return self.a array = numpy.empty((2,2), dtype=object) for i in xrange(0, 2): for j in xrange(0, 2): array[i,j] = MyClass(i+j) for i in xrange(0, 2): for j in xrange(0, 2): array[i,j].add(i, j) print "(%i,%i) = %i" % (i, j, array[i,j].a) try: array_a = array[:,:].a print "a values =",array_a except AttributeError: print "Unable to access a attributes of array as a whole." array_a = numpy.empty((2,2)) for i in xrange(0, 2): for j in xrange(0, 2): array_a[i,j] = array[i,j].a print "a values =",array_a
participants (1)
-
Moroney, Catherine M (398D)