How to iterate through a sequence, grabbing subsequences?
Bruno Desthuilliers
onurb at xiludom.gro
Fri Sep 29 10:54:32 EDT 2006
Matthew Wilson wrote:
> I wrote a function that I suspect may already exist as a python builtin,
> but I can't find it:
>
> def chunkify(s, chunksize):
> "Yield sequence s in chunks of size chunksize."
> for i in range(0, len(s), chunksize):
> yield s[i:i+chunksize]
>
> I wrote this because I need to take a string of a really, really long
> length and process 4000 bytes at a time.
>
> Is there a better solution?
I don't know if it's better, but StringIO let you read a string as if it
was a file:
def chunkify(s, chunksize):
f = StringIO.StringIO(long_string)
chunk = f.read(chunksize)
while chunk:
yield chunk
chunk = f.read(chunksize)
f.close()
Now I'm sure someone will come up with a solution that's both far better
and much more obvious (at least if you're Dutch <g>)
--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in 'onurb at xiludom.gro'.split('@')])"
More information about the Python-list
mailing list