<p>亲爱的各位,
给定一个变量,比如说,三个值,我试图生成所有可能的组合,比如说,这些变量的三元组。在</p>
<p>当这个代码起作用的时候</p>
<pre><code>site_range=[0,1,2]
states = [(s0,s1,s2) for s0 in site_range for s1 in site_range for s2 in site_range]
</code></pre>
<p>这有点,嗯,笨拙,而且只有当我试图对超过三个变量的组合做同样的操作时,情况会变得更糟</p>
<p>因此,我的Python 101问题:</p>
<ol>
<li><p>如何使用迭代器重写上面的代码?我的意思是,有没有可能有一个迭代器来产生上面的“状态”元素?</p></li>
<li><p>有没有可能将这一点扩展到不仅生成三胞胎,还生成4-plets、5-plets等等?</p></li>
</ol>