我这里的问题是当我输入p的值时,没有任何反应,它不追求执行:请问有什么办法可以解决吗?
import sys
from pyspark import SparkContext
sc = SparkContext("local", "simple App")
p =input("Enter the word")
rdd1 = sc.textFile("monfichier")
rdd2= rdd1.map(lambda l : l.split("\t"))
rdd3=rdd2.map(lambda l: l[1])
print rdd3.take(6)
rdd5=rdd3.filter(lambda l : p in l)
sc.stop()
最佳答案
您可以使用 py4j
通过 Java 获取输入
from py4j.java_gateway import JavaGateway
scanner = sc._gateway.jvm.java.util.Scanner
sys_in = getattr(sc._gateway.jvm.java.lang.System, 'in')
result = scanner(sys_in).nextLine()
print(result)
根据您的环境/spark 版本,您可能需要将 sc
替换为 spark.sparkContext
关于python - pyspark 中的函数 input(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41532465/