For Loop in List

Tim Chase python.list at tim.thechases.com
Sun Jan 13 08:29:20 EST 2013


On 01/13/13 06:45, subhabangalore at gmail.com wrote:
> Dear Group,
>
> I have a list like,
>
>>>> list1=[1,2,3,4,5,6,7,8,9,10,11,12]
>
> Now, if I want to take a slice of it, I can.
> It may be done in,
>>>> list2=list1[:3]
>>>> print list2
[snip]
> Now, I want to combine iterator with a slicing condition like
>
>>>> for i=list2 in list1:
> 	print "Iterated Value Is:",i
>
> So, that I get the list in the slices like,
> [1,2,3]
> [4,5,6]
> [7,8,9]
> [10,11,12]

Well, you get a SyntaxError because, well, it's a syntax error.  It 
may take a little math to do this:

 >>> SIZE = 3
 >>> for i in range(len(list1)//SICE):
...     print list1[i*SIZE:i*SIZE+SIZE]
...
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
[10, 11, 12]

Or, you can exploit the fact that iterators exhaust inside a for-loop:

 >>> i = iter(list1)
 >>> for item in i:
...     print [item, i.next(), i.next()]
...
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
[10, 11, 12]



Hope this helps,

-tkc






More information about the Python-list mailing list