简书地址:https://www.jianshu.com/p/71d5e959af73
1. 环境
IDEA 2019.2
python 3.7
2. 问题
使用IDEA编写pyspark程序时没有方法提示,影响编程效率,具体情况如下:
-
由类型创建的对象通过
对象.方法名
方式调用方法,有方法提示(图中红色箭头指向的代码)。 -
而由方法返回的对象,python无法判断其类型,通过
对象.方法名
调用方法时没有方法提示,只能自己手动码出来(图中红框中的代码)。
由方法返回的对象,python无法识别其具体类型,只能判断为Any类型。
3. 解决办法
-
如果知道方法的返回值类型,可以通过
变量名: 类型
方式接收对象。
此种方法非常影响码字速度,还需要导入每个类型对应的模块,非常繁琐,建议使用下边的方法。 -
pyspark-stubs包
pyspark-stubs是Apache Spark存根文件的集合。具体描述见官网pyspark-stubs
使用pip安装对应包:
pip install pyspark-stubs
或者在IDEA中下载:
安装完成直接就可以生效,不过看官网描述,支持的模块还不够完善,目前用的较少,还没有发现什么异常。