Mac Python IDLE自动完成/弹出窗口无法正常工作

问题描述 投票:1回答:2

这里是Python的初学者。我在Mac上安装了Python 3.6.5,我使用的是默认的IDLE。当我做VBA或Java(很久以前)时,在输入“。”之后,曾经有弹出式帮助/完成建议。 (例如)。

我如何在IDLE中实现它?

编辑//还有另一个线程问基本相同的问题,但它已经六年了。我想,我不想重新确定这么老的线程,因为很多东西已经改变了。

结论:当我使用Python附带的IDE键入时,是否可以弹出“交互式帮助”?

macos autocomplete popup python-idle
2个回答
3
投票

我不知道这是否适用于3.6.5,但这是3.7的解决方案。

  • MacOS 10.14.4
  • Python 3.7.3
  • 安装在python.org
  • Tk版本:8.6.8

测试这是否是您的问题:

如果你输入str(,你应该看到一个解释str的calltip。 (e.i.str(object='') -> str)。

但是,如果你键入str.(tab)并且没有看到窗口,那么这对我有用。


转到文件autocomplete_w.py。您可以通过以下方式找到文件路径:

>>> import idlelib.autocomplete_w
>>> idlelib.autocomplete_w
/the/path/to/autocomplete_w.py

(默认路径是/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/idlelib/autocomplete_w.py

并在此文件中添加第200行:

197        scrollbar.config(command=listbox.yview)
198        scrollbar.pack(side=RIGHT, fill=Y)
199        listbox.pack(side=LEFT, fill=BOTH, expand=True)

200        acw.update_idletasks() ##### ADD THIS to fix the autocomplete

201        acw.lift()  #...

1
投票

当我运行空闲时,我使用tab键进行自动完成。例如,如果我键入pri,然后按Tab键,则pri变为print。如果有多个命令,则Tab键会打开一个弹出窗口供您选择。

© www.soinside.com 2019 - 2024. All rights reserved.