Accessing AST at runtime
Terry Reedy
tjreedy at udel.edu
Sun Sep 2 02:05:32 EDT 2012
On 9/1/2012 10:30 PM, alessandromoura35 at googlemail.com wrote:
> Hi,
>
> I would like to access the AST of a python object at runtime. I mean,
> if I have this:
>
> def f(x): return x*x/2
>
> Is there any way to interrogate the object f to find out the AST of
> the expression x*x/2 ? Of course if the definition of f were in a
> file, I could use the ast module to parse it; but what I want is to
> do this from within the code.
>
> The closest thing I was able to find was f.__code__, and more
> specifically f.__code__.co_code, but that is a byte-string which
> seems to be the bytecode (?) for the function.
>
> This may not be possible at all; maybe after the def statement is
> processed by the Python interpreter the AST information is discarded.
Yes, it is.
--
Terry Jan Reedy
More information about the Python-list
mailing list