相关疑难解决方法(0)

使用ipython在pycharm中获得REAL代码完成

许多python IDE都提供代码完成(代码洞察),PyCharm是其中一个IDE.但是,在我看来,提供的代码完成非常有限.让我举个例子说清楚:

import numpy as np
m = np.random.random((3,5))
m.
Run Code Online (Sandbox Code Playgroud)

在'm'之后击中CTRL空间.不会给我任何代码完成, - 无论我多么难以点击它;)..我想这是因为IDE必须进行类型推断以了解变量'm'的类型,并且这不是'在动态编程语言领域中是微不足道的.

现在,PyCharm带有一个名为"收集代码洞察的运行时类型信息"的设置,这听起来确实很有希望.但是,它似乎没有解决上面提到的问题..我仍然无法在变量'm'上获得代码完成.

到目前为止,我只找到了一种在PyCharm中获取变量代码完成的方法:

import numpy as np
m = np.random.random((3,5))
''':type : np.matrix'''
m.
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我可以在'm.'之后按CTRL空格时获得代码完成,这是因为我通过使用docstring指定变量的类型来帮助IDE.但是,我对这种获取代码完成的方式不满意,因为它为所有这些文档字符串添加了不必要的冗长(更不用说所有额外的键盘输入了)...

IPython救援..(也许?)

现在,如果我们在linux-terminal中启动IPython并输入第一段代码,我们将能够一直获得代码完成,即使是变量'm'.(通过按TAB而不是CTRL空格来实现IPython中的代码完成)

我对IPython没有多少经验,但我相信我听说过IPython不断在循环中执行代码或类似的东西......

我认为应该可以使用IPython来实现PyCharm编辑器中所有变量的REAL代码完成....

有没有办法设置PyCharm使用IPython进行代码完成?

请注意,我不满意将代码发送到终端窗口/控制台,或类似的东西,我想在PyCharm的编辑器中完成代码...

在Pycharm Ubuntu中看过像这样的问题添加ipython作为解释器,但它似乎是在控制台中使用IPython,而不是在编辑器中......在IDE中也有很多关于代码完成的问题,但他们似乎都有与PyCharm相同的令人不满意的代码完成程度......

我的设置

  • 操作系统:Debian测试
  • python:Python3和IPython3
  • IDE:Pycharm 3.0.2专业版

python ipython code-completion pycharm python-3.x

12
推荐指数
1
解决办法
4690
查看次数

标签 统计

code-completion ×1

ipython ×1

pycharm ×1

python ×1

python-3.x ×1