StringType add operation seems every inefficient
Rick Lee
rwklee at home.com
Wed Feb 14 17:29:26 EST 2001
Thank you all for your suggestions. I will try out both join() and
cStringIO.
"Lee, Rick" wrote:
> If I do something like this:
>
> s = ''
> for i in listOfStrings:
> s = s + i
>
> Once listOfStrings is say 10000 members of 100 bytes, it takes forever
> (ie. minutes) for the "for" loop to finish. This is running on a 700MHz
> WinNT machine, Python 2.0
>
> Contrast with:
>
> s = ''
> blocks = []
> for i in listOfStrings:
> s = s + i
> if len(s) > 4000
> blocks.append(s); s = ''
>
> This takes a blink of the eye to finish, so it is faster than the first
> piece of code by between 100 and 1000 times.
>
> Is this relative inefficiency in the string add operation expected?
>
> I eventually have to produce a big long string of approx. 10MB. What is
> the fastest way to do it without having to write C-extensions?
>
> - Rick Lee
More information about the Python-list
mailing list