有python程序打印出硬币翻转的所有组合

时间:2016-10-31 01:30:21

标签: python python-2.7 probability

我正在研究涉及硬币翻转的python程序。如何获得一个python程序列出4个硬币翻转的所有可能组合?

所以我希望程序输出:

HHHH, HHHT, HHTT, etc.

提前致谢!

1 个答案:

答案 0 :(得分:0)

您可以使用itertools.product

>>> list(itertools.product("HT", repeat=4))
[('H', 'H', 'H', 'H'),
 ('H', 'H', 'H', 'T'),
 ('H', 'H', 'T', 'H'),
 ('H', 'H', 'T', 'T'),
 ('H', 'T', 'H', 'H'),
 ('H', 'T', 'H', 'T'),
 ('H', 'T', 'T', 'H'),
 ('H', 'T', 'T', 'T'),
 ('T', 'H', 'H', 'H'),
 ('T', 'H', 'H', 'T'),
 ('T', 'H', 'T', 'H'),
 ('T', 'H', 'T', 'T'),
 ('T', 'T', 'H', 'H'),
 ('T', 'T', 'H', 'T'),
 ('T', 'T', 'T', 'H'),
 ('T', 'T', 'T', 'T')]

然后,如果您想再次返回一个字符串,只需在每个元组上调用''.join