让 python 程序打印出抛硬币的所有组合
Have python program print out all combinations of coin flips
我正在开发一个涉及掷硬币的 python 程序。我怎样才能得到一个 python 程序来列出抛 4 次硬币的所有可能组合?
所以我要程序输出:
HHHH, HHHT, HHTT, etc.
提前致谢!
您可以使用 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
我正在开发一个涉及掷硬币的 python 程序。我怎样才能得到一个 python 程序来列出抛 4 次硬币的所有可能组合?
所以我要程序输出:
HHHH, HHHT, HHTT, etc.
提前致谢!
您可以使用 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