python - Unresolved 导入 'util'

标签 python visual-studio-code

在 Google、Reddit 上进行了大量搜索,但该网站毫无结果,所以希望这里有人可以帮助我。代码

import util

给出错误未解析的导入'util'util.py 是同一文件夹中的模块。作为引用,这是我的层次结构:

\Projects
    |-\adventure
        |-\src
            |-__init__.py
            |-main.py
            |-util.py

这是我的 VSCode 信息:

Version: 1.32.2 (user setup)
Commit: e64cb27b1a0cbbc3f643c9fc6c7d93d6c6509951
Date: 2019-03-13T02:00:46.035Z
Electron: 3.1.6
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Windows_NT x64 10.0.17134

任何帮助将不胜感激。

最佳答案

我相信正在发生的事情是 VSCode 正在从当前工作目录运行 main.py,该目录不是 /Projects 或其任何子目录。因此,当您尝试 import utilfrom Adventure import util 时,它找不到该文件。一个快速简单的修复方法是将 /src 的路径附加到 sys.path:

import sys
sys.path.append('/Projects/adventure/src')
import util

或者 /src绝对路径。更简洁的方法可能是附加您的 /Projects 目录,然后从 Adventure 导入,这样如果您想在 Projects 文件夹中包含其他包中的模块,则不必附加额外的目录。

import sys
sys.path.append('/Projects') # whatever the absolute path to /Projects is
from adventure import util

另一种可能性涉及更新 VSCode 配置文件以指定修改后的 PYTHONPATH 环境变量,以指定从中导入项目的路径。您可以在配置下的 launch.json 中包含以下内容:

"env": {
    "PYTHONPATH": "/path/to/src/:${PYTHONPATH}"
}

或创建一个 .env 文件来指定相同的内容:

PYTHONPATH=/path/to/src/:${PYTHONPATH}

这些是从 visualstudio docs 获得的。请注意,在 Windows 上,您可能需要将 : 更改为 ;,将 / 更改为 \\

关于python - Unresolved 导入 'util',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55172807/

相关文章:

visual-studio-code - 是否可以在VsCode扩展中捆绑预组合的二进制文件?

python - 如何将 int 的值与元组列表中的同一组组合?

python - QTableView 中的换行符

python - 在 numpy 一维数组中查找拐点和固定点

python - Python数据解析中的正则表达式

python - MacOS 上的 Tensorflow : Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA

firebase - 带有 VScode 的 Firebase 智能感知

php - Visual Studio 代码 : How to make a snippet for inserting <? php ?>

python - 模块未找到错误: No module named 'tensorflow' Vs code

javascript - 为什么for-of-loop还没运行完,就跳出来运行console.log?