我尝试使用 itertools.permutations 生成排列,但我对如何为 n 位数执行此操作感到非常困惑。
问问题
1855 次
2 回答
5
我会itertools.product
改用:
In [26]: for i in itertools.product(['4', '7'], repeat=2):
....: print int(''.join(i))
....:
44
47
74
77
repeat
论据是你的n
.
于 2013-05-26T08:32:08.703 回答
1
我会使用二进制,如果你需要所有 2 位数字,只有7
,4
作为数字:
base-2 中的最大 2 位数字是11b
ie 3
,所以:
0 => 00b
1 => 01b
2 => 10b
3 => 11b
然后用0
和4
(1
任意7
)替换,给出:44, 47, 74, 77
于 2013-05-26T08:38:15.093 回答