【问题标题】:Integrated debugging pyspark dataframes sometimes outputs to Terminal instead of Debug Console集成调试 pyspark 数据帧有时会输出到终端而不是调试控制台
【发布时间】:2018-12-18 21:42:26
【问题描述】:

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

ch.count()  
32489

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

ch.show()
None

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

"console": "None"  

还有:

"console": "integratedTerminal"

还有:

"debugOptions": ["RedirectOutput"]

谢谢

【问题讨论】:

    标签: pyspark visual-studio-code apache-spark-sql vscode-settings


    【解决方案1】:

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

    【讨论】:

    • ch.count() 在同一窗口中显示正确的计数。此外,这用于工作。我习惯于输入 ch.show() 并在不切换窗口的情况下看到输出。
    • 有没有办法让两个窗口垂直堆叠?没关系。
    猜你喜欢
    • 2018-09-09
    • 2018-07-31
    • 2021-02-18
    • 2020-04-20
    • 2018-01-31
    • 2021-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多