Call-Funktion zweimal oder öfter in einer Schleife
Ich benutze den Code unten mitlambda
Funktion einmal in einer Schleife aufrufen, es funktioniert, aber jetzt versuche ich, die Funktion für bestimmte Zeiten wie 3 Mal in einer Schleife aufzurufen. Ich habe danach gesucht und einige Lösungen gefunden, aber sie rufen die Funktion für bestimmte Zeiten auf, wenn es keine Schleife gibt , wenn ich es in einer Schleife versuche, ändert sich nichts. Gibt es eine effiziente Möglichkeit, dies zu tun?
Dieser arbeitet in einer Schleife und druckt nur einmal. Ich möchte, dass so etwas dreimal gemacht wird.
def once():
print "Do function once"
once.func_code = (lambda:None).func_code
once()
Der folgende Code ändert nichts und druckt für immer weiter, wenn er sich in einer Schleife befindet oder nicht funktioniert.
def repeat_fun(times, f):
for i in range(times): f()
def do():
print 'Do function for 3 times'
repeat_fun(3, do)
Auch das Hinzufügen eines Zählers außerhalb der Schleife hilft, aber ich denke, es sollte eine bessere Lösung dafür geben.