如何忽略Pydev Eclipse中的特定未定义变量

时间:2010-05-06 01:33:18

标签: python eclipse ide pydev

我正在使用Eclipse和Pydev插件在Windows上编写跨平台python脚本。如果当前平台不是NT,则脚本使用os.symlink()os.readlink()方法。

由于Windows平台上没有os.symlink()os.readlink()方法,Pydev会将它们标记为未定义的变量 - 如下所示:

eclipse_undef_variable

问题:

有没有办法忽略特定的未定义变量名错误而不修改我的源文件?

编辑:我找到了一种在stackoverflow上忽略来自this answer的未定义变量错误的方法。
如果有办法使用项目文件或Pydev设置来解决这个问题,我会保留问题。

3 个答案:

答案 0 :(得分:3)

我使用pydev + pylint。

使用pylint,您可以在首选项> Pydev> Pylint>“要传递给pylint的聚合”部分中添加要忽略的邮件。

--disable-msg=W0232,F0401

您可以在线注释消息以及注释:

os.symlink(target, symlink) # IGNORE:<MessageID> 

鼠标悬停在“x”处,其中行号将显示消息ID。

答案 1 :(得分:1)

我怀疑pydev可能有更好的,特定的解决方案,但是如果只是在程序的开头添加一些代码,例如:

if not hasattr(os, 'symlink'): os.symlink = None

是的,这是一个黑客,但是,除非pydev 确实有专门的解决方案(不幸的是我不知道任何,但后来我不是pydev专家;-),可能比没什么...

答案 2 :(得分:0)

我注意到PyDev不识别ZeroMQ常量,所以我在同样的问题上挣扎。

我发现PyDev在Preferences > PyDev > Code Editor > Code AnalysisUndefined - 标签中有一个设置选项。只需在那里写symlinkreadlink(逗号分隔)即可删除错误。

仍然不是最优的,但现在还不错。