【问题标题】:How to find different combinations between two list?如何找到两个列表之间的不同组合?
【发布时间】:2019-01-14 06:04:19
【问题描述】:

有两个列表。 list_1=[a1,b1,c1,d1] list_2=[a2,b2,c2,d2]

条件是 (i) 每个组合中必须有四个元素,并且 (ii) 组合应该包含 a 的一个元素(即 a1 或 a2),一个 b 的元素(即 b1 或 b2),一个c 的元素(即 c1 或 c2)和 d 的一个元素(即 d1 或 d2)。

请帮助我使用 python 3x 找出不同的组合。

【问题讨论】:

    标签: python python-3.x combinations


    【解决方案1】:

    你可以使用itertools.product:

    from itertools import product
    
    list_1 = ['a1','b1','c1','d1']
    list_2 = ['a2','b2','c2','d2']
    
    result = list(product(*zip(list_1, list_2)))
    
    print(result)
    

    [('a1', 'b1', 'c1', 'd1'), ('a1', 'b1', 'c1', 'd2'), ('a1', 'b1', 'c2', 'd1'), ('a1', 'b1', 'c2', 'd2'), ('a1', 'b2', 'c1', 'd1'), ('a1', 'b2', 'c1', 'd2'), ('a1', 'b2', 'c2', 'd1'), ('a1', 'b2', 'c2', 'd2'), ('a2', 'b1', 'c1', 'd1'), ('a2', 'b1', 'c1', 'd2'), ('a2', 'b1', 'c2', 'd1'), ('a2', 'b1', 'c2', 'd2'), ('a2', 'b2', 'c1', 'd1'), ('a2', 'b2', 'c1', 'd2'), ('a2', 'b2', 'c2', 'd1'), ('a2', 'b2', 'c2', 'd2')]
    

    【讨论】:

      猜你喜欢
      • 2019-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-03
      • 1970-01-01
      相关资源
      最近更新 更多