2.3 KiB
python3小白课:模块内容查看
包本质也是模块,本课我们讲的内容也适用于包。
查看模块成员
之前我们讲过,可以使用dir()命令查看包含哪些命令,在这里依然是适用的,参数传入模块名即可,模块需要先行导入。
需要注意的是,使用该命令会把那些包含_下划线的开发者定义的内部成员或特殊方法都给获取到,如果你不希望获取到,可以输入如下命令来获取:
[i for i in dir(模块名) if not i.startswith("_")]
使用列表推导式,替换模块名之后即可查看所有非内部成员。
你还可以使用__all__成员来查看开发者想让你知道的有哪些成员,但并非所有模块都有定义该成员,若未定义,可以使用dir()命令或介绍的列表推导式来获取。
查看模块文档
我们多次讲过,一个好的帮助文档是我们必不可少的,定义好之后,可以使用help()命令或__doc__属性来查看帮助文档。
有些python自带的标准库的文档可能不够详实,你可以参考官方的文档:
https://docs.python.org/zh-cn/3/library/index.html
你还可以使用如下命令来查看包文档:
python -m pydoc -p 8899
在cmd中运行后,会启动一个服务器页面http://localhost:8899/,点击访问你就可以看到你已有的所有包的文档。你也可以在运行改代码之后,在cmd中输入b并回车,打开浏览器访问该页面,按q并回车,退出服务。
查看模块路径
当我们觉得这个模块的代码不错,需要进一步研读python代码了解开发逻辑时(python的源码理论上都是开源的),可以使用__file__属性来查看模块的路径,打开路径中所示的文件即可具体查看代码。一些不错的IDE比如pycharm还支持直接跳转并打开模块所对应的文件,十分方便查看。
比如我们可以这样写:
# coding:utf-8
import xiaobai
print(xiaobai.__file__)
在python中,还有部分与底层交互的模块不是用python写的,而是用C语言写的,这些程序可能没有__file__属性,请知悉。
单词释义
| 单词 | 释义 |
|---|---|
| file | 文件 |