包已安装在 conda 中,但未找到模块。这怎么可能?

Package installed in conda but module not found. How is that possible?

似乎很多人都在为这个问题而苦恼,但我找不到任何有效的答案。 我认为我做的一切都是对的,但它仍然不起作用。 我已经构建了自己的包并将其安装在我的 conda 环境中。 当我执行 conda list 时,它出现在列表的最后(我将其称为 zzpackagerps):

...
zlib                      1.2.11            h62dcd97_1010    conda-forge
zstd                      1.4.9                h6255e5f_0    conda-forge
zzpackagerps              0.0.1                     dev_0    <develop>

现在,当我 运行 python 在这个环境 (py39) 中尝试导入包时,我得到了臭名昭著的 ModuleNotFoundError:

(py39) s:\Sources>python
Python 3.9.4 | packaged by conda-forge | (default, May 10 2021, 22:10:34) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import zzpackagerps
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'zzpackagerps'
>>>

这怎么可能?或者,更重要的是,我该如何让它发挥作用?
(顺便说一句:运行宁 Windows)

不能评论所以在这里问。

您是否以 root 身份安装了软件包?如果是,执行以下命令:

sudo chmod -R a+rX /home/deeplearning/anaconda3/envs/

如果不是,则可能是潜在的路径问题:

您的 python 命令可能引用与您活动的 conda 环境文件夹中的 python 不同的 python。在终端 which condawhich python.

中通过 运行 检查这个

或者,重新安装 conda。

一个可能的问题是包名称可能与模块名称不同。如果您找到 site-packages 安装软件包的位置,您可以尝试查看文件夹结构以及定义 __init__.py 个文件的位置。