Fatest standard way to sum bytes (and their squares)?
Alexander Schmolck
a.schmolck at gmail.com
Mon Aug 13 13:49:19 EDT 2007
Alexander Schmolck <a.schmolck at gmail.com> writes:
> Erik Max Francis <max at alcyone.com> writes:
>
>> Alexander Schmolck wrote:
>>
>>> Is this any faster?
>>>
>>> ordSum, orsSumSq = (lambda c:c.real,c.imag)(sum(complex(ord(x),ord(x)<<1)
>>> for x in data))
>>
>> That's pretty clever, but I neglected to mention that I need to accumulate the
>> sums as ints/longs to avoid losing precision, so converting to floating point
>> isn't an optional.
>
> I think you can safely use this trick (provided it really makes things faster)
> provided you sum blocks no larger than 2**(53-8) bytes;
Forgot about the squares; make this 2**(53-16); still pretty big.
'as
More information about the Python-list
mailing list