python模块存储在哪里?

mor*_*ous 53 python directory module

我最近开始学习Python,我有两个与模块有关的问题.

  1. 有没有办法获取机器上可用(即已安装)的Python模块列表?
  2. 我正在使用Ubuntu Karmic和Synaptic进行包管理.我刚刚安装了一个python模块.模块代码实际存储在我的机器上了吗?(是否存在模块存储的默认[推荐]位置)?

Xav*_* Ho 71

1)有没有办法在机器上获得可用(即安装)的Python模块列表?

这对我有用:

help('modules')
Run Code Online (Sandbox Code Playgroud)

.

2)模块代码实际存储在我的机器上的哪个位置?

通常在/lib/site-packages你的Python文件夹中.(至少在Windows上.)

您可以使用sys.path查找搜索模块的目录.

  • 如果你想要一个特定模块的位置,`import`它并查看它的`__file__`属性.适用于大多数人. (24认同)
  • 'help('modules')的+1.不知道那个.:) (2认同)
  • @NoufalIbrahim 您的答案与答案本身一样值得。泰。您可以附加它以使其粗体显示给用户。 (2认同)

小智 37

如果您正在使用pip

pip show <package name>
Run Code Online (Sandbox Code Playgroud)

示例输出pip show tensorflow

Name: tensorflow
Version: 2.1.1
Summary: TensorFlow is an open source machine learning framework for everyone.
Home-page: https://www.tensorflow.org/
Author: Google Inc.
Author-email: packages@tensorflow.org
License: Apache 2.0
Location: /home/user/.local/lib/python3.6/site-packages
Requires: termcolor, six, astor, numpy, grpcio, absl-py, protobuf, tensorflow-estimator, tensorboard, gast, keras-applications, opt-einsum, wheel, keras-preprocessing, google-pasta, scipy, wrapt
Required-by: tf-models-official
Run Code Online (Sandbox Code Playgroud)

安装位置如图所示Location:/home/user/.local/lib/python3.6/site-packages


Pan*_*Nik 30

你可以简单地输入 __CODE__


小智 13

在 Windows 机器上,python 模块位于(系统驱动器和 python 版本可能会有所不同):

C:\Users\Administrator\AppData\Local\Programs\Python\Python38\Lib
Run Code Online (Sandbox Code Playgroud)


小智 7

您可以通过首先列出模块来找到模块​​代码:

help("modules")
Run Code Online (Sandbox Code Playgroud)

这会输出 Python 可以导入的模块列表。在这个列表的底部是一个短语:

输入任何模块名称以获取更多帮助。或者,键入“modules spam”以搜索名称或摘要中包含字符串“spam”的模块。

查找模块位置:

help("module_Name")
Run Code Online (Sandbox Code Playgroud)

例如:

help("signal")
Run Code Online (Sandbox Code Playgroud)

这里有很多信息。滚动到底部以找到它的位置

/usr/lib/python3.5/signal.py
Run Code Online (Sandbox Code Playgroud)

复制链接。要查看代码,请在退出 Python REPL 后:

nano /usr/lib/python3.5/signal.py
Run Code Online (Sandbox Code Playgroud)


Cat*_*lus 5

  1. 您可以遍历列出的目录sys.path来查找所有模块(内置模块除外)。
  2. 它可能就在附近的某个地方/usr/lib/pythonX.X/site-packages(再次参见sys.path)。并考虑使用本机 Python 包管理(通过pipeasy_install、 plus yolk),Linux 发行版维护的存储库中的包往往会过时。