# [Numpy-discussion] how do I list all combinations

Charles R Harris charlesr.harris@gmail....
Wed Dec 26 15:37:34 CST 2007

```On Dec 26, 2007 2:30 PM, Charles R Harris <charlesr.harris@gmail.com> wrote:

>
>
> On Dec 26, 2007 1:45 PM, Keith Goodman <kwgoodman@gmail.com> wrote:
>
> > On Dec 26, 2007 12:22 PM, Mathew Yeates <myeates@jpl.nasa.gov> wrote:
> > > I have an arbitrary number of lists. I want to form all possible
> > > combinations from all lists. So if
> > > r1=["dog","cat"]
> > > r2=[1,2]
> > >
> > > I want to return [["dog",1],["dog",2],["cat",1],["cat",2]]
> > >
> > > It's obvious when the number of lists is not arbitrary. But what if
> > > thats not known until runtime?
> >
> > Would this work?
> >
> > Make a function that takes two inputs (a list of lists and a list) and
> > returns a list of lists that contains all possible combinations.
> > Iterate through all lists by calling the function with the output of
> > the previous call (a list of lists) and the next list.
> > ____
> >
>
> Yeah, you can do it with recursion, but I don't think it would be quite as
> efficient. An example of the explicit approach, define the following
> generator:
>
> def count(listoflists) :
>     counter = [i[0] for i in listoflists]
>

Make that counter = [0 for i in listoflists]. That bug slipped in going from
[0]*len(listoflists).

Chuck
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://projects.scipy.org/pipermail/numpy-discussion/attachments/20071226/331007e8/attachment.html
```