Dopiero zacząłem uczyć się Pythona i odkryłem, że mogę przekazać funkcję jako parametr innej funkcji. Teraz, jeśli zadzwonię pod foo(bar())
, to nie przejdzie jako wskaźnik funkcji, ale wartość zwracana użytej funkcji. Wywołanie funkcji foo(bar)
przejdzie przez tę funkcję, ale w ten sposób nie będę mógł przekazać żadnych dodatkowych argumentów. Co zrobić, jeśli chcę przekazać wskaźnik funkcji, który wywołuje bar(42)
?Python, jak przekazać argument do parametru wskaźnika funkcji?
Chcę możliwość powtarzania funkcji niezależnie od argumentów, które do niej przekazałem.
def repeat(function, times):
for calls in range(times):
function()
def foo(s):
print s
repeat(foo("test"), 4)
W tym przypadku funkcja foo("test")
ma być nazywane 4 razy z rzędu. Czy istnieje sposób, aby to osiągnąć bez konieczności przechodzenia "testu" na repeat
zamiast foo
?
Strona poprzednia: Nie są to" f " wskaźniki unction "! W Pythonie funkcje są obiektami. –