coding style - Loop with conditions in python -
consider following code in c:
for(int i=0; i<10 && some_condition; ++i){ do_something(); } i write similar in python. best version can think of is:
i = 0 while some_condition , i<10: do_something() i+=1 frankly, don't while loops imitate for loops. due risk of forgetting increment counter variable. option, addressess risk is:
for in range(10): if not some_condition: break do_something() important clarifications
some_conditionnot meant calculated during loop, rather specify whether start loop in first placei'm referring python2.6
which style preferred? there better idiom this?
in general, "range + break" style preferred - in python 2.x, use xrange instead of range iteration (this creates values on-demand instead of making list of numbers).
but depends. what's special number 10 in context? some_condition? etc.
response update:
it sounds though some_condition "loop invariant", i.e. not change during loop. in case, should test first:
if some_condition: in xrange(10): do_something()
Comments
Post a Comment