我是 Python3 的新手,正在尝试做一个递归的 powerset 函数。它应该使用列表理解。
我写:
def powerset(seq):
if not seq:
return [[]]
return powerset(seq[1:]) + [[seq[0]] + n for n in powerset(seq[1:])]
这个函数有效,但我得到了反馈,并被告知没有必要调用该函数两次。它做了很多计算。它应该能够轻松计算多达 20 个 powerset。那我该怎么办?如果不调用该函数两次,我将无法使其工作。谢谢。