source code of a function object
antonmuhin.REMOVE.ME.FOR.REAL.MAIL at rambler.ru
Thu Nov 13 16:25:14 CET 2003
Fernando Rodriguez wrote:
> Is ti possible to get the source code of a given function object? O:-)
I'm not an expert, but I'd say that mostly yes, however:
bar_code_block = compile('def bar(): pass', '<string>', 'exec')
assert 'foo' in locals()
assert 'bar' in locals()
Traceback (most recent call last):
File "source.py", line 13, in ?
File "D:\Python23\lib\inspect.py", line 549, in getsource
lines, lnum = getsourcelines(object)
File "D:\Python23\lib\inspect.py", line 538, in getsourcelines
lines, lnum = findsource(object)
File "D:\Python23\lib\inspect.py", line 408, in findsource
raise IOError('could not get source code')
IOError: could not get source code
Therefore, I'd suggest that you can get source code of functions that
are not created with eval/exec etc.
of course, you cannot get source code of C functions (e.g. most of
builtins, I suppose).
More information about the Python-list