我如何了解一个给定的Python模块的源文件安装在哪里?Windows上的方法和Linux上的方法不同吗?

我特别试图寻找datetime模块的源代码,但我对更一般的答案也感兴趣。


当前回答

sys。Path list包含在运行时搜索模块的目录列表:

python -v
>>> import sys
>>> sys.path
['', '/usr/local/lib/python25.zip', '/usr/local/lib/python2.5', ... ]

其他回答

并非所有的python模块都是用python编写的。Datetime恰好是其中之一,并且(在linux上)是Datetime。

你必须将源代码下载到python标准库才能得到它。

只是更新答案,以防现在有人需要它,我在Python 3.9和使用Pip来管理包。就用pip show,例如:

pip show numpy

它将为您提供所有详细信息,包括pip存储所有其他包的位置。

在Ubuntu 12.04上,例如python2的numpy包,可以在以下位置找到:

/usr/lib/python2.7/dist-packages/numpy

当然,这不是一般的答案

sys。Path list包含在运行时搜索模块的目录列表:

python -v
>>> import sys
>>> sys.path
['', '/usr/local/lib/python25.zip', '/usr/local/lib/python2.5', ... ]

看看这个漂亮的"cdp"命令,cd到包含指定Python模块源代码的目录:

cdp () {
  cd "$(python -c "import os.path as _, ${1}; \
    print _.dirname(_.realpath(${1}.__file__[:-1]))"
  )"
}