WEB开发网
开发学院软件开发Python Python 自省指南 - 如何监视您的 Python 对象 阅读

Python 自省指南 - 如何监视您的 Python 对象

 2007-03-30 12:34:10 来源:WEB开发网   
核心提示: keyword 模块让我们返回到关于 Python 关键字的问题,尽管帮助向我们显示了关键字列表,Python 自省指南 - 如何监视您的 Python 对象(7),但事实证明一些帮助信息是硬编码的,关键字列表恰好是硬编码的,在 keyword 模块的注释中,我们还可以看到,但毕竟它的自省

keyword 模块

让我们返回到关于 Python 关键字的问题。尽管帮助向我们显示了关键字列表,但事实证明一些帮助信息是硬编码的。关键字列表恰好是硬编码的,但毕竟它的自省程度不深。让我们研究一下,能否直接从 Python 标准库的某个模块中获取这个信息。如果在 Python 提示符下输入 help('modules keywords') ,则会看到如下信息:

清单 14. 同时使用 modules 和 keywords 寻求帮助

>>> help('modules keywords')
Here is a list of matching modules. Enter any module name to get more help.
keyword - Keywords (from "graminit.c")

看起来, keyword 模块好象包含关键字。在文本编辑器中打开 keyword.py 文件,我们可以看到,Python 确实可以把关键字列表显式地用作 keyword 模块的 kwlist 属性。在 keyword 模块的注释中,我们还可以看到,该模块是根据 Python 本身的源代码自动生成的,这可以保证其关键字列表是准确而完整的:

清单 15. keyword 模块的关键字列表

>>> import keyword
>>> keyword.kwlist
['and', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else',
'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is',
'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'yield']

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接