web-dev-qa-db-ja.com

Spyderはローカル変数を自動補完しません

ローカル変数をオートコンプリートするのに問題があります。これは非常に基本的な機能であり、サポートするはずです。既に宣言されている変数名を書き始めてTabキーを押すと(これがデフォルトのショートカットです)、何も表示されません。これはバグですか?

37
idoda

Spyder dev here)Spyderはローカル変数を完成させますが、この機能を使用するにはropeというライブラリをインストールする必要があります。ターミナルでこのコマンドを実行することで実行できます

pip install rope

Python 3を使用する場合、このコマンドは

pip install rope_py3k

また、エディターでのコード補完は、両方のCtrl+SpaceおよびTab付き。

編集:Spyderバージョンの更新された回答2.3.0

74
Carlos Cordoba

Idoda、Ubuntuでの科学計算のための install PythonリポジトリからのDebian 。Ubuntu 14.04 LTSでPython 3を使用して正しくテストしました。

要約すると次のようになります。まず、インタープリターとパッケージマネージャーをインストールします。

Sudo apt-get install python3 python3-pip 

次に、SpyderのIDEをインストールします。

Sudo apt-get install spyder3

オートコンプリートの実行を楽しみたい場合は、Carlos Cordobaのアドバイスに感謝します。

Sudo pip3 install rope_py3k

最後に、Spiderを開き、オートコンプリートが正しく機能するかどうかを確認します。

別のヒント:

ショートカットをカスタマイズする場合(たとえば、「ctrl + space」が既に使用されている場合)、試してください

Tools--Preferences--Keyboard shortcuts--code completion

好きなように変更できます

3
fstang

私の場合、コマンドconda install spyder、インストールプロセスで次のメッセージが表示されました...

The following NEW packages will be INSTALLED:

rope:   0.10.5-py36_0 conda-forge
spyder: 3.1.4-py36_0  conda-forge

Proceed ([y]/n)? y

私のanacondaのインストールはpython 3.のためのものです。この自動補完が機能した後、OS X El Capitanを利用しています。

3
Gilbert

通常、ctrl + spaceは[ツール]-> [設定]-> [キーボードショートカット]-> [コード補完]でコード補完に設定されます。別のショートカットに変更するオプションがあります。

1
Justin

私は今、anacondaと自動補完を再インストールしました。

私が従った手順:

1>コントロールパネルからAnacondaをアンインストールします

2>コンピューターの再起動

3> [こちら] [1]からancondaをダウンロードしてインストールします

4> anacondaを起動する前に再起動します。

5>完了。

Dependencies in spyder - 3.2.4 (python 3.6)
IPython >=4.0    :  6.1.0 (OK)
cython >=0.21    :  0.26.1 (OK)
jedi >=0.9.0     :  0.10.2 (OK)
nbconvert >=4.0  :  5.3.1 (OK)
numpy >=1.7      :  1.13.3 (OK)
pandas >=0.13.1  :  0.20.3 (OK)
pycodestyle >=2.3:  2.3.1 (OK)
pyflakes >=0.6.0 :  1.6.0 (OK)
pygments >=2.0   :  2.2.0 (OK)
pylint >=0.25    :  1.7.4 (OK)
qtconsole >=4.2.0:  4.3.1 (OK)
rope >=0.9.4     :  0.10.5 (OK)
sphinx >=0.6.6   :  1.6.3 (OK)
sympy >=0.7.3    :  1.1.1 (OK)
  [1]: https://www.anaconda.com/download/#windows
0
kepy97