python-3.x - ModuleNotFoundError:没有名为“Python3”的模块
问题描述
使用 Python 3.8,导入时出现问题。这很简单。但是在 python 3 中的导入方式有什么变化吗?
在main
文件夹下,存在以下结构。
a1.py
import sys
print(sys.version)
from b.b1 import *
b1.py
import os
print(os.getcwd())
当我执行python a/a1.py
(下main
)时,它prints python version
在导入时出错,如下所示
Traceback (most recent call last):
File "a/a1.py", line 3, in <module>
from b.b1 import *
ModuleNotFoundError: No module named 'b'
它可以通过在 中附加路径来解决a1.py
,但不是解决方案。我在这里遗漏了什么还是取决于解释器路径?
import sys
print(sys.version)
sys.path.append("path")
from b.b1 import *
在 Pycharm 中,当我a1.py
没有执行sys.path.append
(右键单击,以“a1”运行)时,它会执行。执行的命令如下所示
/Users/a1234/venv/bin/python /Users/a1234/project_folder/main/a/a1.py
当我a1.py
没有sys.path.append
从终端执行时(在 main、python a/a1.py 下,ModuleNotFoundError:
出现错误)
解决方案
a1.py 中的模块找不到 b 文件夹,因为它已经在一个文件夹中,但是如果您在两个文件夹 a、b 之外有一个 python 文件,就像您的代码一样调用每个文件夹,这可能会起作用。——</p>
sys.path.append(path),将路径添加到路径列表中以检查可导入模块,因此它执行它的原因。
推荐阅读
- matlab - Matlab apriltag alddiaz / MATLAB_AprilTag3 工具箱安装
- apache-spark - pyspark - PYTHONPATH 可以用于工作节点上的 Python 解释器来查找 Python 模块吗?
- android - WhatsApp/Messenger 克隆方法
- ios - Flutter 图像选择器卡在相机上
- c - GDT 段重新加载失败
- python-3.x - OpenCV - ArUco:detectMarkers 未能识别照片中的一些标记
- python - 用于检查列表中的哪个项目已更改的 Python 脚本?
- python - 将展开的 GAN 更新到 TF2
- reactjs - 反应 mongodb 错误 - 无法连接到 mongodb 表
- python-3.x - 如何将 psycopg2 导入我正在编写的新模块中