IPythonでのタブ補完は機能していないようです。例えば、
import numpy
numpy.<tab>
単にタブを追加します。
import numpy
num<tab>
タブも追加するだけです。この問題の考えられる原因をいくつか教えてください。 Windows 7を実行していますが、Python 2.6.5。
pyreadline ライブラリがインストールされていることを確認してください。タブ補完やその他のIPython機能に必要です-WindowsではIPythonパッケージに付属していないため、個別にインストールする必要があります-
> pip install pyreadline
Ipythonrcファイルが古くなっている可能性があります。実行してみてください
ipython -upgrade
pip
は、pyreadlineバージョン1.7.1がインストールされていると教えてくれました
C:\Users\me>pip freeze | grep readline
pyreadline==1.7.1
pyreadline
をアップグレードすると修正されました:
C:\Users\me>pip install --upgrade pyreadline
C:\Users\me>pip freeze | grep readline
pyreadline==2.0
古典的な「あなたはそれをオフにして再びオンにしてみましたか」は私のために働いた。
pip uninstall ipython
pip install ipython
StackOverflowの他の誰かがこのリンクを投稿しました: http://www.vankouteren.eu/blog/2009/06/getting-ipython-readline-and-auto-completion-to-work-on-mac-os- x /
基本的にeasy_install readline
はreadline Eggがインストールされた場所を発見し、このreadlineを使用するためにipython binスクリプトを編集します:
easy_install readline
/Library/Python/site-packages/readline-*.Egg
または対応するVirtualenvを見てくださいwhich ipython
import sys
行の直後にreadline Eggパスを追加します。私のvirtualenved ipython binスクリプトは次のように機能しました:
#!/Users/alanjds/src/git/cervejeiras/venv/cervejeiras-lfs/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'ipython==0.13.1','console_scripts','ipython'
__requires__ = 'ipython==0.13.1'
import sys
### ONLY LINE ADDED:
sys.path.insert(0, '/Users/alanjds/src/git/cervejeiras/venv/cervejeiras-lfs/lib/python2.6/site-packages/readline-6.2.4.1-py2.6-macosx-10.6-fat.Egg')
####
from pkg_resources import load_entry_point
if __== '__main__':
sys.exit(
load_entry_point('ipython==0.13.1', 'console_scripts', 'ipython')()
)
現時点では、OSXで、ipythonをインストールしたpipはタブ補完を提供しません。pyreadlinerelease.pyは無効です。
easy_install ipython readline
YMMV。
これは本当に古い質問ですが、上記の答えはどれも私にとってはうまくいきませんでした(そして、この性質の質問をグーグルで検索すると、これが最初のヒットです)。
これはWindows専用ではなく、CentOS 6.5とPython 2.7
ここに私がやったことがあります:
apt-get/yum install ncurses-devel
#If you want history in iPython:
apt-get/yum install sqlite-devel
easy_install ipython readline
ipython
In [1]: from
Display all 391 possibilities? (y or n)
-develパッケージがない場合、それらをリンクして卵をビルドするときが来ると、インストールは失敗します。これが他の人に役立つことを願っています!
そうしなければならなかった mv ~/.ipython{,.bak}
私の場合。
Jupyterノートブックを使用していて、ここの投稿で提案されているすべてのステップを試してもTabのオートコンプリートが機能する場合は、関数定義内でTabのオートコンプリートを使用しようとしているかどうかを確認できます。インポートステートメントが以下のような関数の一部である場合、Tabオートコンプリートは取得されません。インポート文を関数の外側に配置し、パッケージの自動補完を要求する前にそれらを一度実行する必要があります。
def myfunction():
import pandas as pd
import numpy as np
a = pd.DataFrame(np.random.normal(1,3, (4,4))
return a
私はこの問題を抱えていて、探しているモジュールにピップがインストールされていることを知っていました。 $ ipython --init
は私のために問題を解決しました。
Pyreadlineはipythonに必要です。 pyreadlineをインストールします。これはWindows 7で行われました。pyreadlineZipを取得します。 pyreadline-master.Zip 、unzip。 PowerShellでディレクトリをuzipped pyreadlineに変更し、pythonがPathに設定されていることを確認し、commandpython setup.py install
これはC:\ Python27\Lib\site-packagesのpyreadlineをインストールします
IPythonをダウングレードするとうまくいきました。
pip install --upgrade ipython==5.8.0