我在datamodel/目录中有很多数据模型,我不想一个一个地导入它们,所以我做到了:
from datamodel import * # pylint:disable=unused-wildcard-import然后我做了:
datamodel_file.DataModelClass(db_server)我在VS代码中得到以下错误:
未定义变量'datamodel_file‘(pylint(未定义-变量)22,27个未定义变量:'datamodel_file’(未定义-变量)22,27
这方面有几个问题:
datamodel_file.DataModelClass(db_server) # pylint:disable=undefined-variable,它的效果是禁用来自pylint的错误,但来自Python的其他错误仍然存在。我应该如何纠正这个错误?
发布于 2019-05-17 22:12:23
在REPL之外,不鼓励使用import *,因为在这种情况下,您无法从内省名称应该来自的代码中分辨出来。有可能是datamodel以某种奇怪的方式指定了datamodel_file,而Pylint或语言服务器无法理解。
至于两个linter警告,这是因为您同时运行两个工具: Pylint和Python语言服务器,后者提供基本的linting。如果您想禁用Python服务器,请查看对其设置的文档。
但是解决这个问题的最好方法就是不使用import *。要么执行import datamodel,然后使用datamodel.datamodel_file (或者执行类似于import datamodel as dm; dm.datamodel_file的操作)。或者你可以使用from datamodel import datamodel_file。
https://stackoverflow.com/questions/56150801
复制相似问题