使用Pydev在Eclipse中使用变量自动完成功能

时间:2017-06-16 15:39:04

标签: python eclipse autocomplete pydev

  • Windows:Windows 7专业版
  • Python:python-3.6.1-amd64.exe
  • pyodbc:pyodbc-4.0.16-cp36-cp36m-win_amd64.whl
  • Eclipse:Neon.3Release(4.6.3)Build id:20170314-1500
  • PyDev for Eclipse:5.7.0201704111357

通过运行pip install pyodbc-4.0.16-cp36-cp36m-win_amd64.whl安装pyodbc后,我在Eclipse中得到了未解析的导入pyodbc。所以我在Python Interpreter>下手动添加了“pyodbc”。在Eclipse中解决了Forced Builtins和“未解决的导入pyodbc”问题。

但是,自动完成对于使用Pydev的Eclipse中的变量不起作用。除非我定义pyodbc.connect,否则我可以自动完成conn.cursor()但不会conn = pyodbc.Connection

自动完成功能不适用于变量conn

import pyodbc

if __name__ == '__main__':
    conn = pyodbc.connect('Connecting String....')
    cur = conn.Cursor()

自动完成适用于变量conn

import pyodbc

if __name__ == '__main__':
    conn = pyodbc.Connection
    conn = pyodbc.connect('Connecting String....')
    cur = conn.Cursor()

1 个答案:

答案 0 :(得分:0)

这主要是因为PyDev无法推断出pyodbc.connect返回的内容(它无法真正执行它,它只能看到它是一个方法调用并尝试从其文档字符串进行猜测)。

您可以通过在文档字符串中添加类型提示来帮助它:

#: :type conn: pyodbc.Connection

有关详细信息,请参阅:http://www.pydev.org/manual_adv_type_hints.html