[Tutor] Calculating and returning possible combinations of elements from a given set

Nick Raptis airscorp at otenet.gr
Wed Jul 28 00:31:39 CEST 2010

On 07/28/2010 01:20 AM, ZUXOXUS wrote:
> Hi all pythoners
> I've got a probably easy to answer question.
> Say I've got a collections of strings, e.g.: 'man', 'bat', 'super', 
> 'ultra'.
> They are in a list, or in a sequence or whatever, say a bag of words
> And now I want to know how many couples I can do with them, and I want 
> the program to show me the actual couples: 'manman', 'manbat', 
> 'mansuper', 'manultra', 'batbat', 'batman', 'batsuper', etc.
> But hey, why building up new words from just two strings? I also want 
> to know the possible combinations of three words, four words, and 
> perhaps, why not, five words.
> So, is it easy to do?
> Sorry, I'm new in programing, and am probably far from being a math-master
> I'm clueless, I think probably the code have some FOR I IN SEQUENCE... 
> but then what? I don't know how to say: take every element and paste 
> it to another one from the bag, and with another one, and with another 
> one,...
> If it's too complex, I dont need the whole code recipe, just need some 
> clues, or perhaps a useful link
> Thank you very much in advance!

Take a look in the itertools module 
Check the section "*Combinatoric generators:" (website doesn't have an 
anchor link for that, search around a bit)


More information about the Tutor mailing list