使用import inspect查看python 类的参数和模块、函数代码
文件就是最小的模块,文件夹是比较大的模块。
文件里面可以包含类,函数。
函数可以执行一个操作,多个函数组合在一起可以写为一个模块,根据不同事物写成一个类,这个类包含几个行为写成几个类内的函数,也可以将这些作为一个文件。
主要步骤是将文件路径设置到系统,再将文件作为模块引入,再开始查看文件里面的内容。
首先,写了一个函数
def h(): print "hello" def hm(m,k): print m, k class w(object): def __init__(a, self): name =a def g(self): print name,"hello world!"
保存在路径C:下,起个名字叫hello.py
打开python shell 窗口,将这个路径加入到系统路径里。命令如下
import sys
sys.path.append('C:/')
将文件当做一个模块引入。
import hello
import inspect
查看整个模块hello的源代码: inspect.getsource(hello) 整个样子不好看,需要print inspect.getsource(hello)
查看模块hello里面wo这个类的全部代码 print inspect.getsource(hello.w)
查看模块内某个函数的代码: print inspect.getsource(hello.h)
查看模块内某个类中函数的代码 print inspect.getsource(hello.w.g)
查看模块中某个函数的参数的代码:inspect.getargspec(hello.hm)
查看模块中类的参数代码 inspect.getargspec(hello.w.__init__) #这里还是查看类的初始定义函数。
查看类中函数参数代码 inspect.getargspec(hello.w.g)
查看模块路径 inspect.getabsfile(hello)
查看文件夹模块中某个类的路径 inspect.getabsfile(。。。)#结果是显示类的初始定义函数__init__.py的位置。
>>> inspect.getabsfile(django.db)
'c:\python27\lib\site-packages\django-1.7.1-py2.7.egg\django\db\__init__.py'
综上,最重要的是要记住,
查看全部代码 inspect.getsource(模块.函数)或者(模块.类.函数)
查看函数参数 inspect.getargspec(...) 查看类的参数,则括号里为(模块.类.__init__)
查看函数的位置 inspect.getabsfile(...)
这些应该够学习用了。以后有什么再补充。