Funktionen in einem Tupel ablegen und aufrufen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Poseidonius
User
Beiträge: 63
Registriert: Montag 23. Januar 2006, 08:58

Hallo zusammen,

ich möchte einer Dispatcherfunktion eine vom Nutzer zusammenzustellendes Tupel von Funktionen übergeben, die dann eine nach der anderen abgearbeitet wird. Die Funktionen haben alle die gleiche Zahl von Parametern.

Also in etwa so

Code: Alles auswählen

def function1(A):
      # mach irgendwas

def function2(A):
      # mach irgendwas

def function3(A)
      # mach irgendwas

def dispatcher(tasks, A):   
      for i in range(0,len(tasks)):
           tasks(i)         ???

tasks=[function1, function2]    #der Nutzer trifft hier eine Auswahl
dispatcher(tasks, A)               #und lässt diese dann ausführen
Nur wie müssen die Funktionen aus dem Dispatcher aufgerufen werden?

Tausend Dank für Eure Hilfe

Poseidonius
jerch
User
Beiträge: 1669
Registriert: Mittwoch 4. März 2009, 14:19

Code: Alles auswählen

def dispatcher(tasks, A):  
    for function in tasks:
        function(A)
Wenn Du willst das A "durchgereicht" wird, dann kannst Du es ja zurückgeben und neu an 'A' binden:

Code: Alles auswählen

def dispatcher(tasks, a):  
    for function in tasks:
        a = function(a)
    return a
Poseidonius
User
Beiträge: 63
Registriert: Montag 23. Januar 2006, 08:58

Na da kann man wirklich selbst drauf kommen ... Schande über mich

Ein schönes Wochenende für Dich

Poseidonius
Antworten