Chr*_* B. 134 python code-analysis pydev
我在Eclipse中使用PyDev创建了一个Python项目,PyDev不断为我的代码生成错误的错误.我有一个settings定义settings对象的模块.我在模块中导入它b并分配一个属性:
from settings import settings
settings.main = object()
Run Code Online (Sandbox Code Playgroud)
在我的一些代码中 - 但不是全部代码,如下所示:
from settings import settings
print settings.main
Run Code Online (Sandbox Code Playgroud)
...在Eclipse代码错误窗格中生成"来自import:main的未定义变量"消息,即使代码运行没有问题.我怎样才能纠正这些?
Fab*_*zny 152
对于项目中的代码,唯一的方法是添加一个声明,说明你期望的 - 可能受到保护if False而不执行(静态代码分析只能看到你看到的内容,而不是运行时信息 - 如果你自己打开那个模块,你没有迹象表明主要是预期的).
为了克服这个问题,有一些选择:
如果它是一些外部模块,可以将其添加到forced builtinsPyDev中,以便它获取运行时信息(请参阅http://pydev.org/manual_101_interpreter.html了解详细信息) - 即:主要是PyDev将导入模块中的外壳,并做了dir(module),并dir在模块中发现的类呈现的完成,使代码分析.
您可以在有错误的行中使用Ctrl + 1(Cmd + 1 for Mac),PyDev将为您提供添加注释以忽略该错误的选项.
可以创建一个stub模块并将其添加到predefined完成(http://pydev.org/manual_101_interpreter.html也有详细说明).
ube*_*kel 48
我正在使用opencv,它依赖于二进制文件等,所以我有脚本,其他所有行都有这个愚蠢的错误.Python是一种动态语言,因此不应将此类场合视为错误.
我通过以下方式完全删除了这些错误:
窗口 - >首选项 - > PyDev - >编辑器 - >代码分析 - >未定义 - >导入时未定义的变量 - >忽略
就是这样.
它也可能是,Window - > Preferences - > PyDev - > Editor - > Code Analysis - > Imports - > Import not found - > Ignore
ste*_*nci 18
标记为答案的帖子提供了一种解决方法,而不是解决方案.
这个解决方案对我有用:
Window - Preferences - PyDev - Interpreters - Python InterpreterForced builtins选项卡New...multiprocessing在我的例子中),然后单击OK错误消息不仅会消失,模块成员也会被识别.
我在Eclipse/PyDev项目中遇到了类似的问题.在这个项目中的Python代码的根目录是该项目的一个子目录.
--> MyProject
+ --> src Root of python code
+ --> module1 A module
+ --> module2 Another module
+ --> docs
+ --> test
Run Code Online (Sandbox Code Playgroud)
当项目被调试或运行时,一切都很好,因为工作目录设置在正确的位置.但是,PyDev代码分析无法从module1或module2中找到任何导入.
解决方法是编辑的项目属性 - >的PyDev - PYTHONPATH部分,然后从源文件夹选项卡中删除/ MyProject的,并添加/ MyProject的/ src目录,以它来代替.
小智 6
这为我工作:
步骤1)移除解释器,再次自动配置
步骤2)窗口-首选项-PyDev-解释器-Python解释器转到“强制内置”选项卡。单击“新建...”。输入模块名称(在我的情况下为curses),然后单击“确定”。
步骤3)右键单击项目浏览器中给出错误的模块。转到PyDev->代码分析。
| 归档时间: |
|
| 查看次数: |
105704 次 |
| 最近记录: |