回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我在从列表创建元素组合时遇到麻烦。在</p>
<p>我想做的是在Python中创建一个递归函数,它返回元素的组合,例如list<code>a = [1,2,3,4,5,6,7,8]</code>,结果是组合[1,2,3,4],[1,3,4,5],[1,4,5,6],[1,2,4,5]等等。对于8个元素,它应该返回70个组合(如果我计算正确的话)。虽然最好的选择是不要重复组合。在</p>
<p>我试图对它进行编码,但得到的只是<code>[1,2,3,4],[1,3,4,5] etc</code>,而不是组合{<cd3>}</p>
<p>我知道有一个特殊的函数,但我想递归地做。有什么建议吗?在</p>
<pre><code>nimed = ["A","B","C","D","E","F","G","H"]
def kombinatsioonid(listike,popitav):
if len(listike) < 4:
return
tyhi = []
for c in range(len(listike)):
tyhi.append(listike[c])
listike.pop(popitav)
print(tyhi)
kombinatsioonid(listike,popitav)
kombinatsioonid(nimed,1)
</code></pre>