Triplet Combinations of All Values - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: General Coding Help (https://python-forum.io/forum-8.html) +--- Thread: Triplet Combinations of All Values (/thread-30767.html) |
Triplet Combinations of All Values - quest - Nov-04-2020 Hello, I am using a specific library And I am running this line: cirq.kron(cirq.unitary(cirq.rz(a)),cirq.unitary(cirq.rz(b)),cirq.unitary(cirq.rz(a)))And I also have to write this code line with all possible triplet combinations of a and b Like cirq.kron(cirq.unitary(cirq.rz(a)),cirq.unitary(cirq.rz(a)),cirq.unitary(cirq.rz(a))) cirq.kron(cirq.unitary(cirq.rz(a)),cirq.unitary(cirq.rz(a)),cirq.unitary(cirq.rz(b))) cirq.kron(cirq.unitary(cirq.rz(a)),cirq.unitary(cirq.rz(b)),cirq.unitary(cirq.rz(a))) cirq.kron(cirq.unitary(cirq.rz(a)),cirq.unitary(cirq.rz(b)),cirq.unitary(cirq.rz(b))) cirq.kron(cirq.unitary(cirq.rz(b)),cirq.unitary(cirq.rz(a)),cirq.unitary(cirq.rz(a))) cirq.kron(cirq.unitary(cirq.rz(b)),cirq.unitary(cirq.rz(b)),cirq.unitary(cirq.rz(a))) cirq.kron(cirq.unitary(cirq.rz(b)),cirq.unitary(cirq.rz(a)),cirq.unitary(cirq.rz(b))) cirq.kron(cirq.unitary(cirq.rz(a)),cirq.unitary(cirq.rz(b)),cirq.unitary(cirq.rz(a))) cirq.kron(cirq.unitary(cirq.rz(b)),cirq.unitary(cirq.rz(b)),cirq.unitary(cirq.rz(b)))[/python] How can I do that in the simplest way? RE: Triplet Combinations of All Values - bowlofred - Nov-04-2020 Probably you could use itertools.product to generate them. >>> from itertools import product >>> list(product("ab", repeat=3)) [('a', 'a', 'a'), ('a', 'a', 'b'), ('a', 'b', 'a'), ('a', 'b', 'b'), ('b', 'a', 'a'), ('b', 'a', 'b'), ('b', 'b', 'a'), ('b', 'b', 'b')]So something similar to: for triplet in product((a, b), repeat=3): cirq.kron(cirq.unitary(cirq.rz(triplet[0])),cirq.unitary(cirq.rz(triplet[1])),cirq.unitary(cirq.rz(triplet[2]))) RE: Triplet Combinations of All Values - quest - Nov-05-2020 (Nov-04-2020, 11:38 PM)bowlofred Wrote: Probably you could use itertools.product to generate them.Thank you very much :)) |