[英]python console tab completion not working in windows
内置完成依赖于 GNU readline
库。
您可以通过在 Windows 上安装此软件包的 python 版本 ( pyreadline ) 来完成工作。
python -m pip install pyreadline
原始的pyreadline
不再维护,并且不适用于 Python (>=3.10) 的较新版本。 安装pyreadline3
工作:
python -m pip install pyreadline3
我不鼓励在可能的pyreadline
下使用pyreadline
,因为它是为支持 IPython 而编写的,并且在 IPython 停止使用readline
/ pyreadline
来支持他们的 REPL 时停止了积极的开发。
作为替代方案,我建议使用 IPython 本身; 它实现了自己的制表符完成功能(从 5.0 开始使用prompt_toolkit
),以终端不可知的方式工作。 如果您安装并使用ipython
,您将获得 Tab ipython
以及它提供的许多其他功能以改善交互体验。 使用与现代 Python 捆绑的py.exe
管理器应用程序,为 Python 3 安装它(如果为所有用户安装了 Python,则在管理员提升的命令提示符中):
py -3 -mpip install ipython
然后运行它:
py -3 -mIPython
如果您不希望整个ipython
只是为了获得这些功能, prompt_toolkit
确实提供了一个极简的ptpython
REPL ,它基本上是“Python 和prompt_toolkit
提供的 REPL”,没有所有其他 IPython 花里胡哨。
安装以下软件包应该在 python CLI 和pyspark
shell 上解决这个问题。
pip install pyreadline
pip install ipython
对于 Windows,请考虑使用免费的 Visual Studio 社区作为 Python IDE - 它具有您可能需要的 Python shell(Python 交互式窗口)的所有开箱即用的自动完成功能:用于模块、方法等。
在下面的示例中,我已经导入了DiveIntoPython.py
,一旦我这样做了,模块的名称现在就变成了自动完成建议。
如果您想自动添加自己的模块路径,您应该使用 odjo 描述的内置site
模块: https ://stackoverflow.com/a/59411635/2170898 -> 只需在site.USER_SITE
目录中创建sitecustomize.py
文件此内容(不要忘记更改实际路径):
import site
site.addsitedir(r'C:\My_Projects')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.