如何从Python对象检索源代码?
我们使用getsource()检查模块的方法来获取函数的源代码。
inspect.getsource(object)
返回对象的源代码文本。参数可以是模块,类,方法,函数,回溯,框架或代码对象。源代码作为单个字符串返回。如果无法检索源代码,则会引发IOError。
如果该函数是从字符串,流中编译的,或者是从编译文件中导入的,则无法检索其源代码。
我们导入检查模块并检索给定脚本的源代码,如下所示
示例
#baz.py
import inspect
class foo:
def bar():
print 'Hello'
print(inspect.getsource(foo))输出结果
C:/Users/nhooo1/~.py
class foo:
def bar():
print 'Hello'