小编roc*_*tor的帖子

VSCode ModuleNotFoundError:没有名为 X 的模块

我正在尝试构建一个新包,但是,当我尝试从 VSCode 内部或终端运行任何文件时,我遇到了以下错误:

ModuleNotFoundError: No module name 'x'
Run Code Online (Sandbox Code Playgroud)

我当前的文件夹结构如下:

package
|---module
|------__init__.py
|------calculations.py
|------miscfuncs.py
|---tests
|------__init__.py
|------test_calcs.py
|---setup.py
|---requirements.txt
Run Code Online (Sandbox Code Playgroud)

但是,当我通过 VSCode 并在 test_calcs.py 中使用import module.calculations as calc或运行测试(PyTest)时from module.calculations import Class,测试按预期工作 - 这让我感到困惑。

我知道这是一个常见问题,但我无法找出适用于此的解决方案。

我尝试使用下面的代码检查工作目录是否在系统路径中。返回的目录列表中的第一项是我正在使用的目录。

import sys
print(sys.path)
Run Code Online (Sandbox Code Playgroud)

我还在文件中使用了以下内容但无济于事:

import module.calculations 
import .module.calculations
from . import miscfuncs
Run Code Online (Sandbox Code Playgroud)

尝试时import .module.calculations,我得到以下信息:

ModuleNotFoundError: No module named '__main__.module'; '__main__' is not a package
Run Code Online (Sandbox Code Playgroud)

当尝试from . import miscfuncs在calculations.py中时,我收到以下错误:

ImportError: cannot import name 'miscfuncs'
Run Code Online (Sandbox Code Playgroud)

当处理模块文件夹中的文件时,我可以使用相对导入:import calculations并且它工作得很好。这对于模块内的文件来说很好,但当我在 test_calcs.py …

python visual-studio-code

29
推荐指数
3
解决办法
8万
查看次数

标签 统计

python ×1

visual-studio-code ×1