Seite 1 von 1
Verfasst: Donnerstag 9. Dezember 2004, 22:53
von Leonidas
Dookie hat geschrieben:Leonidas spricht da aus eigener Erfahrung

Naja, bei open() kann das
gut sein, aber das mit time habe ich in der Mailingliste gelesen, ich habe vorher gar nicht gewusst, dass sowas geht. Man lernt eben immer dazu
Wofür kann man
operator verwenden? Dort sind doch lauter Funktionen die normalerweise anders genutzt werden, mehr Pythonic, denn sub() aufzurufen scheint mir etwas unpraktisch zu sein.
Verfasst: Donnerstag 9. Dezember 2004, 23:15
von Dookie
operator kann oft ein lambda ersetzen z.B. bei Reduce:
Code: Alles auswählen
from operator import *
fak = lambda n: reduce(mul, xrange(2,n),n)
müsste sonst folgendermassen geschrieben werden:
Code: Alles auswählen
fak = lambda n: reduce(lambda a, b: a * b, xrange(2,n),n)
was 1. nicht so elegant ist und 2. auch noch deutlich langsamer in der Ausführung.
Auch kann man die Funktionen aus Operator z.B. für ein Dictionary mit Rechenoperatoren verwenden:
Code: Alles auswählen
from operator import *
op_dict = {"+" : add, "-" : sub, "*" : mul, "/" : div}
Gruß
Dookie