metaclass = ABCmeta语法无效

时间:2018-02-19 12:33:39

标签: python python-3.x apache-spark pyspark

我正在使用以下代码。我的PYSPARK_PYTHON在spark-env.sh中设置为 python2.7 。我在代码中将其更改为 python3.5 。即使在改变路径后我得到以下错误。

import os
os.environ["PYSPARK_PYTHON"]="/usr/bin/python3"
os.environ["PYSPARK_DRIVER_PYTHON"]="/usr/bin/python3"

from abc import ABCMeta
class AbstractHiveClass(metaclass=ABCMeta):

AbstractHiveClass(metaclass=^ABCMeta): Invalid syntax error 

试图在pyspark shell中运行同样的东西。仍然遇到同样的问题。

通过在spark-evn.sh中将PYSPARK_PYTHON指向python3.5来运行代码,似乎工作正常。

有没有办法在不改变spark-env.sh中的任何配置的情况下运行上面的代码。

1 个答案:

答案 0 :(得分:0)

通过将SparkConf对象中的spark.pyspark.python属性设置为python 3.5来解决问题。

spark.pyspark.python=/usr/bin/python3.5