首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么使用Visual代码编写Python代码时会收到2条错误消息?

为什么使用Visual代码编写Python代码时会收到2条错误消息?
EN

Stack Overflow用户
提问于 2019-05-15 13:39:24
回答 1查看 511关注 0票数 0

我在datamodel/目录中有很多数据模型,我不想一个一个地导入它们,所以我做到了:

代码语言:javascript
复制
from datamodel import *  # pylint:disable=unused-wildcard-import

然后我做了:

代码语言:javascript
复制
datamodel_file.DataModelClass(db_server)

我在VS代码中得到以下错误:

未定义变量'datamodel_file‘(pylint(未定义-变量)22,27个未定义变量:'datamodel_file’(未定义-变量)22,27

这方面有几个问题:

  1. 我不明白为什么VS Code/PyLint认为这个变量是未定义的,因为我调试代码时代码运行良好
  2. 为什么有2条错误消息?
  3. 我试着禁用pylint消息,作为一种快速的尝试-看看会发生什么:datamodel_file.DataModelClass(db_server) # pylint:disable=undefined-variable,它的效果是禁用来自pylint的错误,但来自Python的其他错误仍然存在。

我应该如何纠正这个错误?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 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

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56150801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档