python - 如何知道将什么导入 Python 解释器以使用已安装的 python 库

标签 python pip installation

<分区>

我通过以下方式安装了一个名为 PyRadiomics 的 Python 库: pip install pyradiomics

当我执行 pip freeze | grep pyra 在命令提示符下,我看到 pyradiomics==2.0.0 清楚地表明该库已安装。

当我启动 python 解释器并执行 import pyradiomics 时,它不起作用。我意识到我需要做 import radiomics

我只是碰巧弄明白了这一 pip 。 在使用 pip 安装后,有人应该如何知道如何将库导入到他们的 python 脚本中。目前看来,您可以使用 pip install some_name 安装一个库,并且必须在您的 Python 代码中执行 import some_other_name。我已经使用 Python 一段时间了,但之前从未遇到过这个问题,这让我假设 some_name 始终与 some_other_name 相同,但我发现这不是案件。 在安装名为 some_name

的库后,人们怎么知道另一个名字是什么

最佳答案

pip 可以列出它安装的任何包的已安装文件:

$ pip show -f packagename

用 bash 做一些简单的输出过滤/转换,你可以很容易地想出一个自定义命令来列出一个包中的所有 Python 包/模块,例如:

$ pip show -f packagename | grep "\.py$" | sed 's/\.py//g; s,/__init__,,g; s,/,.,g'

wheel 包的示例输出:

$ pip install wheel
...
$ pip show -f wheel | grep "\.py$" | sed 's/\.py//g; s,/__init__,,g; s,/,.,g'
 wheel
 wheel.__main__
 wheel.archive
 wheel.bdist_wheel
 wheel.egg2wheel
 wheel.install
 wheel.metadata
 wheel.paths
 wheel.pep425tags
 wheel.pkginfo
 wheel.signatures
 wheel.signatures.djbec
 wheel.signatures.ed2551
 wheel.signatures.keys
 wheel.tool
 wheel.util
 wheel.wininst2wheel

您甚至可以将其别名为自定义 shell 命令,例如 pip-list-modules。在您的 ~/.bashrc (Linux)/~/.bash_profile (MacOS) 中:

function pip-list-modules() {
    pip show -f "$@" | grep "\.py$" | sed 's/\.py//g; s,/__init__,,g; s,/,.,g'
}

测试它:

$ pip-list-modules setuptools wheel pip  # multiple packages can passed at once

关于python - 如何知道将什么导入 Python 解释器以使用已安装的 python 库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51715784/

相关文章:

python - 如果我正在制作 pip 模块,需要上传或添加哪些文件到 git 存储库

python - 亚马逊 EC2 虚拟环境 : pip says it installed numpy but python can't find it

python - 如何安装 MySQLdb 包? (导入错误 : No module named setuptools)

python - 使用字符串作为Python字典(内存管理)

python - 我在这里做错了什么?~~Python 中的 Tkinter

python - 无法为使用 PEP 517 且无法直接安装的 _ 构建轮子 - 简单的解决方案

linux - 在没有 root 访问权限的情况下安装 SCONS

c# - 在 c#\.NET 中使用自定义操作的 wix 3.5 静默安装程序

Python time.sleep 与忙等待准确性

python - 使用waf,如何在配置期间检查python模块的最低版本?