[python-users] Wer kann das kürzer?

M.-A. Lemburg mal at egenix.com
Mo Feb 15 23:37:56 CET 2016



On 15.02.2016 23:34, Dirk Hünniger via python-users wrote:
> Hallo,
> Ziel der Funktion ist es alle Kombinationen der Buchstaben des Wortes liste auszugeben.
> Viele Grüße Dirk
> 
> def fun(x):
>   if len(x)==1: return [x]
>   else:
>     out=[]
>     for y in range(len(x)):
>       out+=map(lambda z:x[y]+z,fun(x[:y]+x[y+1:]))
>     return out
> for i in fun("liste"):
>   print (i)

>>> import itertools
>>> [''.join(x) for x in itertools.permutations('liste')]
['liste', 'liset', 'litse', 'lites', 'liest', 'liets', 'lsite', 'lsiet', 'lstie', 'lstei', 'lseit',
'lseti', 'ltise', 'lties', 'ltsie', 'ltsei', 'lteis', 'ltesi', 'leist', 'leits', 'lesit', 'lesti',
'letis', 'letsi', 'ilste', 'ilset', 'iltse', 'iltes', 'ilest', 'ilets', 'islte', 'islet', 'istle',
'istel', 'iselt', 'isetl', 'itlse', 'itles', 'itsle', 'itsel', 'itels', 'itesl', 'ielst', 'ielts',
'ieslt', 'iestl', 'ietls', 'ietsl', 'slite', 'sliet', 'sltie', 'sltei', 'sleit', 'sleti', 'silte',
'silet', 'sitle', 'sitel', 'sielt', 'sietl', 'stlie', 'stlei', 'stile', 'stiel', 'steli', 'steil',
'selit', 'selti', 'seilt', 'seitl', 'setli', 'setil', 'tlise', 'tlies', 'tlsie', 'tlsei', 'tleis',
'tlesi', 'tilse', 'tiles', 'tisle', 'tisel', 'tiels', 'tiesl', 'tslie', 'tslei', 'tsile', 'tsiel',
'tseli', 'tseil', 'telis', 'telsi', 'teils', 'teisl', 'tesli', 'tesil', 'elist', 'elits', 'elsit',
'elsti', 'eltis', 'eltsi', 'eilst', 'eilts', 'eislt', 'eistl', 'eitls', 'eitsl', 'eslit', 'eslti',
'esilt', 'esitl', 'estli', 'estil', 'etlis', 'etlsi', 'etils', 'etisl', 'etsli', 'etsil']


-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Experts (#1, Feb 15 2016)
>>> Python Projects, Coaching and Consulting ...  http://www.egenix.com/
>>> Python Database Interfaces ...           http://products.egenix.com/
>>> Plone/Zope Database Interfaces ...           http://zope.egenix.com/
________________________________________________________________________
2016-01-19: Released eGenix pyOpenSSL 0.13.13 ... http://egenix.com/go86

::: We implement business ideas - efficiently in both time and costs :::

   eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
    D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
           Registered at Amtsgericht Duesseldorf: HRB 46611
               http://www.egenix.com/company/contact/
                      http://www.malemburg.com/




Mehr Informationen über die Mailingliste python-users