looking for a neat solution to a nested loop problem

Nobody nobody at nowhere.com
Mon Aug 6 12:18:09 EDT 2012


On Mon, 06 Aug 2012 17:52:31 +0200, Tom P wrote:

> consider a nested loop algorithm -
> 
> for i in range(100):
>      for j in range(100):
>          do_something(i,j)
> 
> Now, suppose I don't want to use i = 0 and j = 0 as initial values, but 
> some other values i = N and j = M, and I want to iterate through all 
> 10,000 values in sequence - is there a neat python-like way to this?

	for i in range(N,N+100):
	    for j in range(M,M+100):
	        do_something(i,j)

Or did you mean something else?

Alternatively:

	import itertools

	for i, j in itertools.product(range(N,N+100),range(M,M+100)):
	    do_something(i,j)

This can be preferable to deeply-nested loops.

Also: in 2.x, use xrange() in preference to range().




More information about the Python-list mailing list