inspect

作者: bigtom | 来源:发表于2016-09-20 09:52 被阅读13次
    方法 作用
    getmembers(object[, predicate]) 获取某个对象的成员
    getmoduleinfo(path) 返回模块信息
    getmodulename(path) 返回模块名
    ismodule(object) 判断是否为模块
    inspect.isclass(object) 判断是否为类
    ismethod(object) 判断是否为方法
    isfunction(object) 判断是否为函数
    isgeneratorfunction(object) 判断是否为生成器函数
    isgenerator(object) 判断是否为生成器
    istraceback(object) 判断是否为traceback
    isframe(object) 判断是否为frame
    iscode(object) 判断是否为code object
    isbuiltin(object) 判断是否为内置函数或方法
    isabstract(object) 判断是否为抽象基类
    import inspect,sys
    
    class Foo:
        def bar():
            pass
    def bar():
        pass
    
    foo = Foo()
    
    def gene():
        n = 1
        while n < 100:
            n += 1
            yield n
    g = gene()
    
    code_object = compile('sum([1, 2, 3])', '', 'single')
    
    assert inspect.isclass(Foo)
    assert inspect.ismethod(foo.bar)
    assert inspect.isfunction(bar)
    assert inspect.isgeneratorfunction(gene)
    assert inspect.isgenerator(g)
    assert inspect.isbuiltin(abs)
    assert inspect.iscode(code_object)
    assert inspect.isframe(sys._getframe())
    

    相关文章

      网友评论

          本文标题:inspect

          本文链接:https://www.haomeiwen.com/subject/ufgnettx.html