Bizzare lst length problem
Ben
Benjamin.Barker at gmail.com
Sun Oct 8 08:48:23 EDT 2006
Ah... my list is a string. That explains the len() results, but not why
it is a string in the dirst place.
I have a dictionary containing a number of instances of the following
class as values:
class panel:
mops =[]
def __init__(self,number,level,location,mops,matrix):
self.number=number
self.level=level
self.location=location
self.mops=mops
self.matrix=matrix
abve mops is a list, yet when I access it it is a string...
Fredrik Lundh wrote:
> Ben wrote:
>
> > The output from this would be (for a given key value):
> > Number: 181
> > Level: ovride+supvis
> > Location: mons=4 v8.0 3rd floor
> > MOPS: ['287', '288', '289', '290']
> > List Length: 28
> > Matrix: kng
> >
> > This is really odd...my len(v.mops) ought to return 4 (4 elements in
> > the list).
>
> adding a
>
> print type(v.mops), repr(v.mops)
>
> debug statement might provide you with the clues you need.
>
> > In fact it returns 28. looking at outputs from lots of
> > records, it seems that the length is almost always 7 time too great
> > (28/7=4)....but not always.
>
> >>> len("['287',")
> 7
> >>> len(" '288',")
> 7
> >>> len(" '289',")
> 7
> >>> len(" '290']")
> 7
>
> </F>
More information about the Python-list
mailing list