Call randint until you get enough bits of entropy to for a long with the appropriate number of bits.<br><br>def randwords(n):<br>  result = 0L<br>  for i in range(n):<br>    result = (result<<32) | randint(0,2<<32-1)
<br>  return result<br><br>-Kevin<br><br><br><div><span class="gmail_quote">On 6/14/07, <b class="gmail_sendername">Will Woods</b> <<a href="mailto:will.woods@ynic.york.ac.uk">will.woods@ynic.york.ac.uk</a>> wrote:</span>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>I want to choose a subset of all possible permutations of a sequence of<br>length N, with each element of the subset unique. This is then going to
<br>be scattered across multiple machines using mpi. Since there is a<br>one-to-one mapping between the integers in the range 0 <= x < N! and the<br>possible permutations, one solution would be to choose M < N! integers
<br>randomly, check for uniqueness, and then scatter only the integers so<br>that individual nodes can construct the permutations. However the<br>integers need to be of type long, and randint doesn't work for numbers<br>
which cannot be converted to int. Any suggestions?<br>_______________________________________________<br>Numpy-discussion mailing list<br><a href="mailto:Numpy-discussion@scipy.org">Numpy-discussion@scipy.org</a><br><a href="http://projects.scipy.org/mailman/listinfo/numpy-discussion">
http://projects.scipy.org/mailman/listinfo/numpy-discussion</a><br></blockquote></div><br>