pythonで直積集合を取る

pythonで、set型同士の直積集合を簡単に得るにはどうすればいいだろうと悩んでいたところ、アドバイスを頂きました。

>>> for n in list(itertools.product([1,2], "abc", (1.2,4.5))): print n
... 
(1, 'a', 1.2)
(1, 'a', 4.5)
(1, 'b', 1.2)
(1, 'b', 4.5)
(1, 'c', 1.2)
(1, 'c', 4.5)
(2, 'a', 1.2)
(2, 'a', 4.5)
(2, 'b', 1.2)
(2, 'b', 4.5)
(2, 'c', 1.2)
(2, 'c', 4.5)
>>> for n in list(itertools.product([1,2], "abc", (1.2,4.5))): print n

うわ便利