[Tutor] Alternating patterns

Pujo Aji ajikoe at gmail.com
Wed Mar 29 08:25:05 CEST 2006


Hi,

you can also use simple way of iterating using modus:

    L = [1,2]
    for i in range(6):
        print L[i%len(L)]

1
2
1
2
1
2

Cheers,
pujo

On 3/29/06, kevin parks <kp8 at mac.com> wrote:
>
> >
> >
> >
> > ------------------------------
> >
> > Message: 10
> > Date: Tue, 28 Mar 2006 22:43:38 -0500
> > From: Kent Johnson <kent37 at tds.net>
> > Subject: Re: [Tutor] Alternating patterns
> > Cc: tutor at python.org
> > Message-ID: <442A026A.9010107 at tds.net>
> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed
> >
> > kevin parks wrote:
> >> I have a set that i iterate over... but each time through it i would
> >> like to alternate between the original set and a variation of the set
> >> that has one of the members of the set altered (by + or - 1)
> >>
> >> So if my original set is:
> >>
> >> [0, 2, 4, 5, 7, 9, 11]
> >>
> >> I would use that the first pass but on the second pass i might like
> >> the third member (4,) to become 3, (-1) resulting in : [0, 2, 3, 5, 7,
> >> 9, 11]
> >>
> >> But then back again to the original  on the next pass (+1 back to 4,):
> >> [0, 2, 4, 5, 7, 9, 11]
> >>
> >> and then back: [0, 2, 3, 5, 7, 9, 11] again, etc.
> >
> >> How can one make such alternating patterns?
> >
> > itertools.cycle() will repeat a sequence indefinitely:
> > In [2]: from itertools import cycle
> >
> > In [3]: i=cycle([1,2])
> >
> > In [5]: for j in range(6):
> >     ...:     print i.next()
> >     ...:
> >     ...:
> > 1
> > 2
> > 1
> > 2
> > 1
> > 2
> >
> > For non-repeating sequences I would look at writing a generator
> > function
> > for the sequences.
> >
> > Kent
>
>
>
> okay.. i am painfully unaware of generators, iterators, sets, genexes
> and a lot of the new stuff post 2.3 & 2.4 stuffs... my problem is that
> i find the online docs kind of terse and few of the Python books yet
> cover these newer constructs in detail....
>
> itertools looks very cool.... are there any toots on the above and on
> Sets & itertools? It really seems like it would help to know these for
> my work... That liddo bit right up there with itertools.cycle already
> has me a drooling... (so helpful that would be!)
>
> -kp--
>
>
>
>
>
> _______________________________________________
> Tutor maillist  -  Tutor at python.org
> http://mail.python.org/mailman/listinfo/tutor
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/tutor/attachments/20060329/4ca43188/attachment-0001.htm 


More information about the Tutor mailing list