我在 VSCode 中收到 pylint 错误,表示无法导入本地文件。但是,我可以通过调试器运行这些文件,没有任何问题。我认为 pylint 使用与解释器相同的 PYTHONPATH,所以我不知道为什么会发生这种情况。
我的代码设置如下:
dir0
-dir1
--__init__.py
--src
---__init__.py
---srcdir1
----__init__.py
----file1.py
---srcdir2
----__init__.py
----file2.py
file1.py 看起来像这样:
def func1():
return 1
file2.py 看起来像这样:
from srcdir1.file1 import func1
func1()
在 launch.json 我有:
"env": {"PYTHONPATH": "/full/path/to/dir0/dir1/src:/usr/local/bin/python"}
Pylint 给我一个关于“from srcdir1.file1”的导入错误。当我进入调试器并单击运行调试器时,文件运行没有问题。但是,如果我右键单击并选择运行代码,我会收到与 pylint 错误匹配的导入错误。
编辑:
我在工作区文件夹中创建了一个名为.env
在我的工作区文件夹中。如下:
PYTHONPATH=/Library/Python/2.7/site-packages:/Users/user/path/dir0/dir1/src:/Users/user/path/client/src:/Users/user/path/product/src
有趣的是,我可以从产品(列表中的第三个)导入,但不能从客户端导入。这个环境是否在某个地方被覆盖了?
我的文件中还有以下内容:
import os
import shutil
import sys
因为某些原因,import sys
(但不是其他)给我以下错误:unresolved import 'sys'Python(unresolved-import)