Ian Kelly <ian.g.ke...@gmail.com> writes:
> j = int(random() * n)
> while j in selected:
>     j = int(random() * n)

from itertools import dropwhile

j = dropwhile(lambda j: j in selected,
                 iter(lambda: int(random() * n), object()))
             .next()

kind of ugly, makes me wish for a few more itertools primitives, but I
think it expresses reasonably directly what you are trying to do.
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to