如何解决生成子集和未使用元素的集合
我想要一个 python 程序,它接受一个整数列表,并返回一个包含子集的元组列表列表,以及包含第一个子集中未使用的其余值的子集,本质上是获得所有组合的可能性列表中的值。
[1,2,3,4]
应该返回
[[(1,),(2,(3,(4,)],[(1,) (3,4,4)]...and so on]
解决方法
是的。对于库 more_itertools
,这非常容易。您可以使用
for
循环在下面编写您的 tuple
级输出并丢弃不需要的
结果。
import more_itertools
s1 = set([1,2,3,4])
subsubsets = more_itertools.set_partitions(s1)
print(*subsubsets)
subsubsets = more_itertools.set_partitions(s1)
for l in subsubsets:
if l1 != sum(len(k) for k in l):
print(f"{l} non-compliant")
break
输出(添加额外的换行符)
[[1,4]]
[[1],[2,4]]
[[1,2],[3,4]]
[[2],[1,3],[4]]
[[2,4]]
[[3],[2],[4]]
[[1],[3],[4]]
[[2],[4]]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。