Deferring a function call
Peter Otten
__peter__ at web.de
Tue Oct 19 05:36:54 EDT 2010
TomF wrote:
> I'm writing a simple simulator, and I want to schedule an action to
> occur at a later time. Basically, at some later point I want to call a
> function f(a, b, c). But the values of a, b and c are determined at
> the current time.
>
> One way way to do this is to keep a list of entries of the form [[TIME,
> FN, ARGS]...] and at simulated time TIME do: apply(FN, ARGS)
> Aside from the fact that apply is deprecated, it seems like there
> should be a cleaner (possibly more Pythonic) way to do this. Ideas?
You can prepare the function
fstar = functools.partial(f, a, b, c)
and later invoke it as
fstar()
Peter
More information about the Python-list
mailing list