I'm looking for a good Python way to generate (enumerate) the 2**N
tuples representing all vertices of the unit hypercube in N-dimensional
hyperspace.

For example, for N=4 the Python code should generate the following 2**N
= 16 tuples:

(1,1,1,1),  (1,1,1,-1),
(1,1,-1, 1),  (1,1,-1,-1),
(1,-1,1,1),  (1,-1,1,-1),
(1,-1,-1, 1),  (1,-1,-1,-1),
(-1,1,1,1),  (-1,1,1,-1),
(-1,1,-1, 1),  (-1,1,-1,-1),
(-1,-1,1,1),  (-1,-1,1,-1),
(-1,-1,-1, 1),  (-1,-1,-1,-1)

Maybe converting each integer in the range(2**N) to binary, then
converting to bit string, then applying the "tuple" function to each
bit string?  

Thanks for your help.

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to