擅长:python、mysql、java
<p>使用递归生成器可以使代码更加紧凑。您只需要从n-1中获取每个结果并附加一个“0”和一个“1”</p>
<pre><code>def allBits(n):
if n: yield from ( bits+bit for bits in allBits(n-1) for bit in ("0","1") )
else: yield ""
for bits in allBits(3):print(bits)
000
001
010
011
100
101
110
111
</code></pre>