[英]ModuleNotFoundError when importing another package
我正在尝试从位于另一个包中的脚本导入一个类:
project_folder
|
| package_1
| | __init__.py
| |foo.py
| |
| package_2
| | __init__.py
| | bar.py
在脚本:“ bar.py ”中,我有以下导入:
from package_1.foo import Class
此行生成错误:
ModuleNotFoundError: No module named 'package_1'
如果您从 package_2 目录运行代码,那么 package_1 不在您的路径中,因此解释器不知道它。
从 project_folder 目录中,您可以运行python -m package_2.bar
,然后它将在您的路径中。
通过路径我的意思是环境变量,它是 python 解释器查找包的目录列表。 默认情况下,它是一些相对于安装 python 的位置+当前目录的位置。 您可以手动将此变量更新为您想要的任何内容(请参阅https://docs.python.org/3/install/index.html#modifying-python-s-search-path )但最一致的方式来运行您的正在描述的是从上面的目录运行它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.