Greetings Marcus,

Peter Otten has also responded, recommending itertools. I think both he and I are not sure how you wish to generate your result list (or lists). But, I have a comment or two.

dear pythonistats
as a newcomber I want to create a set of lists containing n items, for example n = 3: (['a','b','c'], ['a','d','e'].......). The sequence of items in each list should be different. If the letters 'a'........'z' are used and n = 3 there is a maximum of 301 lists.
The following code works only for lists containing 1 item:

import random
list = ['a', 'b', 'c', 'd',....... 'z']

I would recommend against using the name "list". The name list is a Python builtin which creates a list(). Try it at the interactive prompt:

  >>> list()
  []

So, I'd recommend changing that name to "l" or "result" or something like that.

random.shuffle(list)
for x in list:
    print x

how can I solve my task wit n items ?
Thank you for help, Marcus.

You are using random. Do you want n randomly selected items from the input list? The random module provides random.sample() to select n items from a sequence.

If so, try this out at the intercative prompt. Perhaps this is what you are looking for?

  >>> import random
  >>> import string
  >>> l = list(string.lowercase)
  >>> random.sample(l, 7)
  ['z', 'h', 'e', 'n', 'c', 'f', 'r']

Best of luck,

-Martin

--
Martin A. Brown
http://linux-ip.net/
_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor

Reply via email to