这表明Spark版本不匹配。在Spark
2.3
show方法之前,仅接受两个参数:
def show(self, n=20, truncate=True):
从2.3开始,它需要三个参数:
def show(self, n=20, truncate=True, vertical=False):
在您的情况下,Python客户端似乎调用了后者,而JVM后端使用了较旧的版本。
由于
SparkContext初始化在2.4中进行了重大更改,这将导致上的失败
SparkContext.__init__,因此您可能使用:
- 2.3.x Python库。
- 2.2.x JAR。
您可以通过直接从会话(Python)中检查版本来确认这一点:
sc.version
与JVM:
sc._jsc.version()
诸如此类的问题通常是由于配置错误
PYTHONPATH(直接或通过在现有的最高Spark二进制文件上
pip安装安装
PySpark)或导致的
SPARK_HOME。


![PySpark中不存在方法showString([class java.lang.Integer,class java.lang.Integer,classjava.lang.Boolean]) PySpark中不存在方法showString([class java.lang.Integer,class java.lang.Integer,classjava.lang.Boolean])](http://www.mshxw.com/aiimages/31/453095.png)
