[Python-de] Mathematische Module-Kombinationen und Varianten
python-lists at duerer-sinclair.de
python-lists at duerer-sinclair.de
Mon Apr 7 13:41:06 EDT 2003
On Mon, 7 Apr 2003, Josef Cihal wrote:
> Gibt es ein Modul in Python ,
> der mit Kombinationen und Varianten einfach arbeiten kann?
Das weiss ich nicht.
>
> z.B.
>
> ich hätte gerne Wörter mit der Länge 3 die folgende BUchstaben enthalten
> dürfen:
>
> Buchstaben:
>
> abcd123
Du scheinst da noch ein paar zusaetzliche Bedingungen zu haben. Nach
Deiner Beschreibung haette ich aaa, aab, aac, ... erwartet.
Letzteres kann man recht einfach ohne Modul machen:
x = "abcd123"
["".join([a,b,c]) for a in x for b in x for c in x]
Du scheinst noch zur Bedingung zu machen, dass kein Zeichen doppelt
auftaucht... dann wird's schon haariger:
["".join([a,b,c]) for a in x for b in x.replace(a, "") \
for c in x.replace(a, "").replace(b, "")]
oder vielleicht besser:
["".join([a,b,c]) for a in x for b in x for c in x \
if a!=b and a!=c and b!=c]
Da sollte man schon eine Abstraktion einziehen, damit der Kode wartbar
bleibt.
Holger
More information about the Python-de
mailing list