Possible memory leak?
Fredrik Lundh
fredrik at pythonware.com
Tue Jan 24 17:09:02 EST 2006
Tuvas wrote:
> I have a function in a program that works something like this.
>
> def load_pic_data(width,heigth,inpdat, filt=TRUE):
> data=''
> total=0
> tnum=0
> size=100
> for y in range(0,heigth):
> row=''
> for x in range(0,width):
> index=2*(x+y*width)
> num=ord(inpdat[index+1])*256+ord(inpdat[index])
> if(vfilter.get() and d_filter and filt):
> num=round((num-(d_filter[index/2])))
> if(num<0):
> num=0
> if(num>255*64):
> num=255*64
> row=row+chr(num/64)
> data=data+row
>
> The purpose of this part of a program is to take a 14 bit numerical
> representation and convert it to an 8 bit representation. This will
> later be displayed as an image. However, I've noticed the following
> about this code. I was noticing when I took a small picture, it went
> really fast, but a larger picture took forever to run through. I added
> a print statement to the y portion of the code to see where it was
> getting hung up. I noticed that it appears to be running slower as time
> goes on.
hint: what does
> row=row+chr(num/64)
do, and how often is it executed ?
</F>
More information about the Python-list
mailing list