我在此文件夹的Mac OS上使用python3.6创建了venv/Users/kim/Documents/Apps/PythonApps/python36-miros-a3
激活虚拟环境后,我运行了pip install pylint
我的工作区在/Users/kim/Documents/Apps/WebApps/miros-a3
中
在我的vscode工作区中,我具有以下工作区设置
{
"folders": [
{
"path": "."
}
],
"settings": {
"python.pythonPath": "/Users/kim/Documents/Apps/PythonApps/python36-miros-a3/bin/python3.6",
"python.venvPath": "/Users/kim/Documents/Apps/PythonApps"
}
}
我尝试过为pylint设置自定义路径,也更改了venvpath。
皮林特一直抱怨进口声明说它不存在。
如您所见,它们位于同一文件夹中,并且我绝对可以执行python文件。
我应该怎么做才能避免这种假阳性导入错误?
我也尝试了以下方法:
code
激活vscode https://code.visualstudio.com/docs/setup/mac 最佳答案
皮林特有些古怪。在这种情况下,它不知道在哪里找到模块,因为它位于venv路径的子目录中。要解决这个问题:
"python.linting.pylintArgs": [
"--init-hook",
"import sys; sys.path.append('<path to folder your module is in>')"
]
或者,也许更好
pylint --generate-rcfile > .pylintrc
然后打开生成的文件,并取消注释 init-hook = 部分为:
init-hook='import sys; sys.path.append("<path to folder you module is in>")'
如果需要,请阅读.pylintrc并进行调整设置。在两种情况下,路径都应指向“数据库”文件夹。
from database.database_dispatcher import ...
参见Anthony Sottile的this answer。
关于python-3.x - pylint假阳性E0401在使用venv时在vscode中导入错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51095449/