Idiomatic Python for incrementing pairs
Tim Chase
python.list at tim.thechases.com
Sat Jun 8 00:16:22 EDT 2013
On 2013-06-08 07:04, Carlos Nepomuceno wrote:
> alpha, beta = (1 if some_calculation(params) else 0, 1 if
> other_calculation(params) else 0)
This one sets them to absolute values, rather than the incrementing
functionality in question:
> > alpha += temp_a
> > beta += temp_b
The actual code in question does the initialization outside a loop:
alphas_updated = betas_updated = 0
for thing in bunch_of_things:
a, b = process(thing)
alphas_updated += a
betas_updated += b
and it just bugs me as being a little warty for having temp
variables when Python does things like tuple-unpacking so elegantly.
That said, as mentioned in a contemporaneous reply to Jason, I haven't
found anything better that is still readable.
-tkc
More information about the Python-list
mailing list