python - 在 PyDev 中,如何为方法返回的实例获取自动完成功能?

标签 python pydev

当我使用 Class-A 的方法返回 Class-B 的实例时,PyDev 不会为我提供 实例的自动完成B 类。有没有一种方法可以使这项工作有效,这样我就不会输入错误的方法名称或忘记参数?否则,PyDev 将失去它的大部分值(value)!

最佳答案

我想知道您是否正在使用某种类/容器的组合来阻碍 pydev 预测您的返回值类型的能力。这个 super 简单的示例适用于我的系统,我在 inst 上获得了完整的代码完成:

class A(object):
  def __init__(self, params = None):
    self.myBs = [B() for _ in range(10)]

  def getB(self):
    return self.myBs[5]

class B(object):
  def foo(self):
    pass

inst = A().getB()
# Auto-complete broken.  PyDev thinks inst is a list.
assert isinstance(inst, B)
# Auto-complete working again.

在额外的细节之后,assert 语句是触发 PyDev 的自动完成功能所必需的。

关于python - 在 PyDev 中,如何为方法返回的实例获取自动完成功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17798438/

相关文章:

Python ruamel.yaml 转储带引号的标签

python - 在 python 中识别一个字符串是否是停用词

python - NoseGAE 无法在应用程序根目录中导入 .py 文件

python - 在 pydev 上设置覆盖配置

eclipse - 如何在 Eclipse pydev 透视图中删除编辑器的 View ?

python - 带有 Eclipse 的 TensorFlow

python - 线程队列工作示例

python - 计算 2D NumPy 数组的每一行和每一列中的非零元素

python变量赋值 ":"

Aptana Studio 3.0 上的 Django