首页 > 解决方案 > 集成调试 pyspark 数据帧有时会输出到终端而不是调试控制台

问题描述

在调试 pyspark 程序时,我在加载数据帧 ( ch) 之后放置了一个断点。然后,使用调试控制台单命令行我执行以下操作:

ch.count()  
32489

计数正确显示在ch.count(). 但是,如果我尝试显示数据框内容,则会得到以下信息:

ch.show()
None

即便如此,数据框的输出确实正确显示在终端窗口中!因此,如果我单击查看终端窗口,我会看到 ch.show() 的输出。我查看了其他看似相关的问题,但没有成功。例如,我尝试了以下但没有成功。

"console": "None"  

和 :

"console": "integratedTerminal"

还 :

"debugOptions": ["RedirectOutput"]

谢谢

标签: pysparkvisual-studio-codeapache-spark-sqlvscode-settings

解决方案


df.show内部打印为stdoutnot stderr,如果您想打印到 stderr 使用df.take并根据需要自行打印。None 是该df.show方法返回的内容。


推荐阅读