all possible matchings of elements of two lists

dksr dksreddy at gmail.com
Wed Aug 26 06:32:35 EDT 2009


Ok this is how I do it:
l1 = [1,2]
l2= ['a','b','c']
res = []
l2 = permute(l2)
for i in l2:
    lis = [l1,l2]
    res.append(zip(*lis))
    # or use map depending on what u want
    res.append(map(None,*lis))

print res

On Aug 26, 11:05 am, Sandy <dksre... at gmail.com> wrote:
> Hi all,
> I basically want all possible matchings of elements from two lists,
> Ex: [1,2] [a,b,c]
>
> Required:
>    [ [(1,a),(2,b)]
>      [(1,b),(2,c)]
>      [(1,c),(2,b)]
>      [(1,b),(2,a)]
>      [(1,c),(2,a)]
>      [(1,a),(2,c)]
>    ]
>
> My thought is to get all possible permutations of two lists given and
> select any combination and use zip to get the tuples. Repeat this for
> all possible combinations.
>
> Any other ideas?
> Sandy




More information about the Python-list mailing list