在线文档教程

pyclbr

pyclbr - Python类浏览器支持

源代码: Lib / pyclbr.py

pyclbr模块可用于确定有关模块中定义的类,方法和顶级函数的一些有限信息。所提供的信息足以实现传统的三窗格类浏览器。信息是从源代码中提取的,而不是通过导入模块,所以这个模块可以安全地用于不可信的代码。这个限制使得这个模块不能用于在Python中未实现的模块,包括所有标准和可选的扩展模块。

pyclbr.readmodule(module, path=None)

读取一个模块并返回一个字典映射类名到类描述符对象。参数模块应该是一个字符串模块的名称; 它可能是一个包中模块的名称。该路径参数应该是一个序列,并且用于增加的值sys.path,这是用来定位模块的源代码。

pyclbr.readmodule_ex(module, path=None)

就像readmodule(),但返回的字典除了将类名称映射到类描述符对象之外,还将顶级函数名称映射到函数描述符对象。此外,如果正在读取的模块是包,则'__path__'返回的字典中的键具有包含包搜索路径的列表的值。

1.类对象

Class用作字典中值的对象返回readmodule()readmodule_ex()提供以下数据属性:

Class.module

定义由类描述符描述的类的模块的名称。

Class.name

类的名称。

Class.super

Class描述所描述类的直接基类的对象列表。被命名为超类但不被发现的类readmodule()被列为具有类名而不是作为Class对象的字符串。

Class.methods

字典映射方法名称到行号。

Class.file

包含定义类的类语句的文件的名称。

Class.lineno

由文件命名的文件中的类语句的行号。

2.功能对象

Function用作返回字典中的值的对象readmodule_ex()提供以下属性:

Function.module

定义由功能描述符描述的功能的模块的名称。

Function.name

函数的名称。

Function.file

包含def定义函数的语句的文件的名称。

Function.lineno

def指定文件中的语句的行号file