Этот код
import itertools
import functools
i = itertools.cycle(["1", "2"])
def f1():
return next(i)
def f2(a):
print(a)
f = functools.partial(f2, f1())
f()
f()
производит вывод 1 1
. Есть ли очевидный способ предотвратить вычисление f1
при создании f
, поэтому результат будет 1 2
?