我一直和MyPy在VSCode上有问题。我通常会激活我的venv,Pylance作为语言服务器和MyPy扩展(用于检查编辑器更改事件)。MyPy。
MyPy安装在当前的venv上,已启用,已启用,mypy正在使用active解释器,在我的settings.json中:
{
"python.languageServer": "Pylance",
"python.linting.enabled": true,
"python.linting.mypyEnabled": true,
"mypy.runUsingActiveInterpreter": true
}MyPy确实抱怨没有找到“库存根”,对于未键入的包,它也指出了一些错误,但有些非常显式的错误没有显示出来。
举个例子:
# file_a.py
def myfunc() -> dict:
return {}# file_b.py
from file_a import myfunc
from file_z import func_dont_exist
# No error shown here
abc: bool = myfunc()
xyz: str = func_dont_exist()# This points to an error, highlight the "1"
abc = "abc" + 1如果我在根目录上运行mypy .,也没有错误。根目录上有mypy.ini文件,忽略了迁移文件夹、.venv和usiing SQLMyPy插件。
如果禁用ignore_errors类型,则指向迁移文件夹(预期)上的一系列错误,这告诉我守护进程正在工作。
我更新了我的VSCode,尝试禁用我的所有扩展,重新加载,重新启动,检查控制台,什么都没有。
没有关于如何调试这个问题的想法,我发现的每一个问题都是这样的:对设置启用类型、检查路径、启用linting等,但我已经完成了所有这些。
有什么想法吗?
发布于 2022-06-28 08:55:27
在过去,我在mypy上遇到了麻烦,比如加载mypy插件。当我从终端启动vscode时,激活了正确的python环境,就解决了这个问题。
conda activate my-env
cd my/vs-code/project/dir
code .值得一试
https://stackoverflow.com/questions/71088078
复制相似问题