K
kj
Is there an *explicitly stated* reason (e.g. in a PEP, or in some
python dev list message) for why the inspect module (at least for
Python 2.7) does not include anything like a "currentcallable()"
function that would *stably*[1] return the currently executing
callable object?
(It seems unlikely that the absence in the inspect module of anything
even remotely like such a currentcallable is merely an oversight,
considering how many introspection facilities the inspect module
provides. It seems far more likely that this absence is either
due to some fundamental limitation of Python that makes it impossible
to fully specify such a function, or it is the result of a deliberate
policy against including such a function in inspect.)
Thanks!
[1] By "stably" above I mean, e.g., that the value returned by the
top-level function (object) defined by
def spam():
return inspect.currentcallable()
is *invariant*, in contrast to the value returned by the top-level
function (object) defined by
def ham():
return ham
which is whatever the current value of the 'ham' global happens to
be.
python dev list message) for why the inspect module (at least for
Python 2.7) does not include anything like a "currentcallable()"
function that would *stably*[1] return the currently executing
callable object?
(It seems unlikely that the absence in the inspect module of anything
even remotely like such a currentcallable is merely an oversight,
considering how many introspection facilities the inspect module
provides. It seems far more likely that this absence is either
due to some fundamental limitation of Python that makes it impossible
to fully specify such a function, or it is the result of a deliberate
policy against including such a function in inspect.)
Thanks!
[1] By "stably" above I mean, e.g., that the value returned by the
top-level function (object) defined by
def spam():
return inspect.currentcallable()
is *invariant*, in contrast to the value returned by the top-level
function (object) defined by
def ham():
return ham
which is whatever the current value of the 'ham' global happens to
be.