2024-04-25 00:47:33 发布
网友
我试图在python中创建一个包含子列表的列表;比如,一个集合的适当子集。例如
A = [1, 2, 3, 4] Desired List = [[1, 2], [1, 3], [1, 4], [2, 3], [2, 4], [3, 4], [1, 2, 3], [1, 2, 4], [2, 3, 4]]
谢谢!你知道吗
因为您似乎只需要大小为2或更多的子集:
from itertools import combinations, chain A = range(1, 5) list(chain(*(combinations(A, r) for r in range(2, len(A))))) # [(1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4), (1, 2, 3), (1, 2, 4), (1, 3, 4), (2, 3, 4)]
如果需要所有正确的子集,只需将range(2, len(A))更改为range(len(A))。你知道吗
range(2, len(A))
range(len(A))
看起来你想从列表中得到所有的组合。尝试使用itertools.combinations
desired_list = itertools.combinations(A, 2)
因为您似乎只需要大小为2或更多的子集:
如果需要所有正确的子集,只需将
range(2, len(A))
更改为range(len(A))
。你知道吗看起来你想从列表中得到所有的组合。尝试使用itertools.combinations
相关问题 更多 >
编程相关推荐