32.9. pyclbr
- Python类浏览器支持¶
源代码: Lib / pyclbr.py
pyclbr
模块可用于确定关于模块中定义的类,方法和顶级函数的一些有限信息。提供的信息足以实现传统的三窗格类浏览器。该信息是从源代码中提取的,而不是通过导入模块,因此该模块可以安全地使用不受信任的代码。此限制使得无法使用此模块与未在Python中实现的模块,包括所有标准和可选扩展模块。
-
pyclbr.
readmodule
(module, path=None)¶ 读取一个模块并返回一个字典映射类名到类描述器对象。参数模块应该是作为字符串的模块的名称;它可以是包内的模块的名称。path参数应该是一个序列,用于扩充
sys.path
的值,用于定位模块源代码。
-
pyclbr.
readmodule_ex
(module, path=None)¶ 像
readmodule()
,但返回的字典,除了将类名映射到类描述器对象之外,还将顶级函数名映射到函数描述器对象。此外,如果正在读取的模块是包,则返回字典中的键'__path__'
的值为包含软件包搜索路径的列表。
32.9.1. Class Objects¶
用作由readmodule()
和readmodule_ex()
返回的字典中的值的Class
对象提供以下数据属性:
-
Class.
module
¶ 定义由描述器描述的类的模块的名称。
-
Class.
name
¶ 类的名称。
-
Class.
super
¶ 描述正在描述的类的直接基类的
Class
对象的列表。被命名为超类但不能被readmodule()
发现的类被列为具有类名称的字符串,而不是Class
对象。
-
Class.
methods
¶ 字典映射方法名称到行号。
-
Class.
file
¶ 包含定义类的
class
语句的文件的名称。