繁体   English   中英

ModuleNotFoundError:没有名为“my_module”的模块

[英]ModuleNotFoundError: No module named 'my_module'

我已经编写了一个自定义模块,但我无法安装。 这是模块的结构。

├── my_module
│   ├── .git
│   │   ├── <..>
│   ├── build
│   │   ├── <..>
│   ├── class_a
│   │   ├── __init__.py
│   │   ├── class_a_name.py
│   ├── class_b
│   │   ├── __init__.py
│   │   ├── class_b_name.py
│   ├── dist
│   │   ├── <..>
│   ├── my_module.egg.info
│   │   ├── <..>
│   ├── setup.py
│       ├── .gitignore

这存储在C:\Users\my_name\repos\my_module中。

要安装模块,我在 anaconda 提示符下使用命令python setup.py install运行setup.py

如果我导航到C:\Users\my_name\AppData\Local\Continuum\anaconda3\Lib\site-packages\my_module-0.2-py3.7.egg

.egg 文件存在,看起来好像我的模块已安装。

但是,当我尝试在 spyder 中或通过命令提示符使用该模块时,我得到:

ModuleNotFoundError: No module named 'my_module'

我不认为这是一个路径问题,就像该主题的许多其他问题一样。

提前感谢,很高兴详细说明。

是路径问题。 (是的,正确设置路径真的很烦人)

导入的正确路径如下所示:

├── my_module
│   ├── .git
│   │   ├── <..>
│   ├── build
│   │   ├── <..>
│   │   my_module         <-- NEW
│   │   ├── __init__.py   <-- NEW
│   │   ├── class_a
│   │   │   ├── __init__.py
│   │   │   ├── class_a_name.py
│   │   ├── class_b
│   │   │   ├── __init__.py
│   │   │   ├── class_b_name.py
│   ├── dist
│   │   ├── <..>
│   ├── my_module.egg.info
│   │   ├── <..>
│   ├── setup.py

请注意,这会将builddist从模块的实际安装中排除。 如果你不想要的话,把它们移到上面。

这也许可以通过向外移动 setup.py 而不是创建新文件夹来完成,但这取决于您。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM