Jupyter + PySpark自动完成

时间:2019-01-23 21:00:56

标签: python pyspark jupyter-notebook ipython jupyter

对新手Jupyter问题很抱歉-

我已使用本手册安装了Jupyter&PySpark- https://blog.sicara.com/get-started-pyspark-jupyter-guide-tutorial-ae2fe84f594f

一切似乎正常,但是某些“嵌套”功能没有自动完成功能

例如-运行“火花”->我得到了火花会话

当我在“火花”后按Tab键时。 ->我得到了可能的建议列表,例如“已读”

但是在spark.read之后按tab。什么都不显示虽然我希望显示诸如“ csv”,“ parquat”等的选项...

重要说明-运行“ spark.read.csv(“ 1.txt”)“有效

也-尝试应用来自`ipython` tab autocomplete does not work on imported module的建议,但没有成功

我想念什么?

2 个答案:

答案 0 :(得分:1)

我开发了基于TabNine的Jupyter Notebook扩展,该扩展提供了基于深度学习的代码自动完成功能。当然,它也支持Pyspark。这是我的作品的Github链接:jupyter-tabnine

它现在在pypi index上可用。只需发出以下命令,然后使用它即可:)

pip3 install jupyter-tabnine
jupyter nbextension install --py jupyter_tabnine
jupyter nbextension enable --py jupyter_tabnine
jupyter serverextension enable --py jupyter_tabnine

demo

答案 1 :(得分:0)

这可以通过手动导入或设置python的.env变量来完成。

  1. 在python会话/笔记本中。
import rlcompleter, readline
readline.parse_and_bind("tab: complete")
  1. 要在PySpark启动时启用它-我的情况。

.bash_profile

export PYTHONSTARTUP="$HOME/.pythonrc"

.pythonrc

import rlcompleter, readline
readline.parse_and_bind("tab: complete")