【发布时间】:2012-12-02 23:50:54
【问题描述】:
我不明白如何阅读内置 python 模块中的代码。例如,我知道如何找出模块中的内容,
import os;
dir(os)
但是当我尝试寻找函数 listdir 时,我找不到 def listdir 来读取它的实际作用。
【问题讨论】:
-
最简单的选择是look it up in the docs。
-
@Lattyware:文档在哪里告诉您来源?一些模块确实有指向源代码的链接,通常是那些与可用代码一样多的示例(如
asyncore),但大多数没有(如os)。 -
@abarnert 我认为“阅读它的实际作用”是指如何使用它,而不是查看源代码。这个问题有点不清楚,但重读一下,你的解释可能是对的。
-
@HansEngel:这个答案已经过时了。他们在 2.1 中添加了
inspect,因此您不必处理“有时有__file__,有时没有,有时是.pyc,有时是.py,它可能会有所不同不同的平台,甚至在 PyPy 等不同的实现上更糟糕。”东西了,从 3.0 开始,甚至没有记录规则(除了“它必须是inspect期望的任何东西”)。