On Mar 7, 2013 1:29 AM, "Sven" <sven...@gmail.com> wrote: > > Stupid keyboard shortcuts, sent it too early. Apologies > > > I was wondering what the best approach for the following might be. > > Say you have a list P of points and another list N of other items. You can always assume that > > len(N) <= len(P) > > Now I would like to iterate over P and place one N at each point. However if you run out of N I'd like to restart from N[0] and carry on until all the points have been populated. <snip> > Additionally, what if I wanted to pull a random element from N, but I want to ensure all elements from N have been used before starting to pick already chosen random elements again. > So far I thought of duplicating the list and removing the randomly chosen elements from the list, and when it's empty, re-copying it. But that seems a little "wrong" if you know what I mean.
Just iterate over the list in order, and random.shuffle() the list each time you reach the end of it.
-- http://mail.python.org/mailman/listinfo/python-list