Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #43110
| Newsgroups | comp.lang.python |
|---|---|
| Date | 2013-04-08 21:01 -0700 |
| References | <c1cc2d05-e718-4414-a7f3-c1e03621c4f5@googlegroups.com> |
| Message-ID | <2ebc5368-8a73-41ed-b6f4-a2a39aae642f@googlegroups.com> (permalink) |
| Subject | Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' |
| From | bhk755@gmail.com |
On Monday, April 8, 2013 3:37:38 PM UTC+5:30, bhk...@gmail.com wrote: > I am trying to create 2D arrays without using advanced features like numpy, for this I have created 2 separate modules arrays.py and array2D.py. Here's the code for that: > > > > arrays.py module: > > ================== > > import ctypes > > > > class Array: > > > > #Creates an array with size elements. > > def __init__( self, size ): > > assert size > 0, "Array size must be > 0" > > self._size = size > > print "sixe is %s" %self._size > > > > # Create the array structure using the ctypes module. > > PyArrayType = ctypes.c_int * size > > self._elements = PyArrayType() > > print "type is e", type(self._elements) > > #self._elements = ctypes.c_int * size > > > > print "Elements are self.element %s" % self._elements > > # Initialize each element. > > #for i in range(self._size): > > # self.clear( i ) > > > > > > # Returns the size of the array. > > def __len__( self ): > > return self._size > > > > # Gets the contents of the index element. > > def __getitem__( self, index ): > > assert index >= 0 and index < len(self), "Array subscript out of range" > > return self._elements[ index ] > > > > # Puts the value in the array element at index position. > > def __setitem__( self, index, value ): > > assert index >= 0 and index < len(self), "Array subscript out of range" > > print "Type is ", type(index) > > self._elements[ index ] = value > > > > # Clears the array by setting each element to the given value. > > def clear( self, value ): > > for i in range( len(self) ) : > > self._elements[i] = value > > > > # Printing the arrays: > > def __str__(self): > > return self._elements > > > > > > > > array2D.py module > > ================== > > > > > > import arrays > > > > class Array2D : > > # Creates a 2-D array of size numRows x numCols. > > def __init__( self, numRows, numCols ): > > # Create a 1-D array to store an array reference for each row. > > > > self._theRows = arrays.Array( numRows ) > > # Create the 1-D arrays for each row of the 2-D array. > > print "Num of Cloumns is", numCols > > > > for i in range( numRows ) : > > self._theRows[i] = arrays.Array( numCols ) > > > > # Returns the number of rows in the 2-D array. > > def numRows( self ): > > return len( self._theRows ) > > > > # Returns the number of columns in the 2-D array. > > def numCols( self ): > > return len( self._theRows[0] ) > > > > # Clears the array by setting every element to the given value. > > def clear( self, value ): > > for row in range( self.numRows() ): > > row.clear( value ) > > > > # Gets the contents of the element at position [i, j] > > def __getitem__( self, ndxTuple ): > > assert len(ndxTuple) == 2, "Invalid number of array subscripts." > > row = ndxTuple[0] > > col = ndxTuple[1] > > assert row >= 0 and row < self.numRows() \ > > and col >= 0 and col < self.numCols(), \ > > "Array subscript out of range." > > the1dArray = self._theRows[row] > > return the1dArray[col] > > > > # Sets the contents of the element at position [i,j] to value. > > def __setitem__( self, ndxTuple, value ): > > #assert len(ndxTuple) == 3, "Invalid number of array subscripts." > > row = ndxTuple[0] > > col = ndxTuple[1] > > assert row >= 0 and row < self.numRows() \ > > and col >= 0 and col < self.numCols(), \ > > "Array subscript out of range." > > the1dArray = self._theRows[row] > > the1dArray[col] = value > > > > > > arr = Array2D(2,4) > > > > print "arr is %s" %arr > > > > > > Traceback is : > > > > sixe is 2 > > type is e <class 'arrays.c_long_Array_2'> > > Elements are self.element <arrays.c_long_Array_2 object at 0x00AA7F80> > > Cols in 4 > > Num of Cloumns is 4 > > !!!!!!!!!!!!!! i is 0 > > sixe is 4 > > type is e <class 'arrays.c_long_Array_4'> > > Elements are self.element <arrays.c_long_Array_4 object at 0x00B60210> > > Type is <type 'int'> > > Traceback (most recent call last): > > File "C:\Python27\Lib\array2D.py", line 53, in <module> > > arr = Array2D(2,4) > > File "C:\Python27\Lib\array2D.py", line 16, in __init__ > > self._theRows[i] = arrays.Array( numCols ) > > File "C:\Python27\Lib\arrays.py", line 36, in __setitem__ > > self._elements[ index ] = value > > AttributeError: Array instance has no attribute '__trunc__' Hi Dylan, Thank you for the alternative solution. I will look into that.
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' bhk755@gmail.com - 2013-04-08 03:07 -0700
Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' Dylan Evans <dylan@dje.me> - 2013-04-08 22:40 +1000
Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' bhk755@gmail.com - 2013-04-08 23:15 -0700
Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' bhk755@gmail.com - 2013-04-08 23:15 -0700
Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' bhk755@gmail.com - 2013-04-08 21:01 -0700
Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2013-04-09 05:14 +0000
Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' bhk755@gmail.com - 2013-04-08 23:21 -0700
Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' Peter Otten <__peter__@web.de> - 2013-04-09 09:57 +0200
Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' bhk755@gmail.com - 2013-04-09 01:50 -0700
Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' bhk755@gmail.com - 2013-04-09 01:50 -0700
Re: Can anyone please help me in resolving the error => AttributeError: Array instance has no attribute '__trunc__' bhk755@gmail.com - 2013-04-09 01:48 -0700
csiph-web