Can anyone solve this?
Thomas Sicheritz-Ponten
thomas at cbs.dtu.dk
Wed Jun 28 03:52:20 EDT 2000
More information about the Python-list mailing list
Wed Jun 28 03:52:20 EDT 2000
- Previous message (by thread): Can anyone solve this?
- Next message (by thread): ppp-script
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Matthew Schinckel <matt at null.net> writes: > <rdudfield at my-deja.com> wrote in message > news:<8j737m$t5a$1 at nnrp1.deja.com>... > > Hi, > > > > I've got a problem here which I just can't figure out. > > > > a = [1,2,3] b = ["c",32] c = [1,2] > > > > inputlist = [a,b,c] > > > > Inputlist can have any number of lists in it. The lists in it can have > > any number of elements in them. > > > > I need the code to give every possible combination of the lists in > > inputlist. > > > > This is what the answer should be for the inputlist above. > > > > outputlist = [[1, 'c', 1], [1, 'c', 2], [1, 32, 1], [1, 32, 2], [2, > > 'c', 1], [2, 'c', 2], [2, 32, 1], [2, 32, 2], [3, 'c', 1], [3, 'c', > > 2], [3, 32, 1], [3, 32, 2]] [] > > I did find something about combinatorics on starship yesterday, but I > can't remember where it was. something I found on dejanews a couple of months ago ... def cartesian(listList): if listList: result = [] prod = cartesian(listList[:-1]) for x in prod: for y in listList[-1]: result.append(x + (y,)) return result return [()] a = [1,2,3] b = ["c",32] c = [1,2] inputlist = [a,b,c] print cartesian(inputlist) [(1, 'c', 1), (1, 'c', 2), (1, 32, 1), (1, 32, 2), (2, 'c', 1), (2, 'c', 2), (2, 32, 1), (2, 32, 2), (3, 'c', 1), (3, 'c', 2), (3, 32, 1), (3, 32, 2)]
- Previous message (by thread): Can anyone solve this?
- Next message (by thread): ppp-script
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list