gpt4 book ai didi

python - PyQt5 中 QProcess 的刷新缓冲区

转载 作者:行者123 更新时间:2023-12-02 21:24:38 24 4
gpt4 key购买 nike

我有一个使用 PyQt5 框架的 Python 3.4 应用程序,但遇到了问题。

我设置了一个 QProcess:

def listenToServer(self, MainWindow):
self.ws = QtCore.QProcess(self)
self.ws.start("python3 /home/pi/scara_panel/ws.py")
self.ws.readyReadStandardOutput.connect(self.processServer)

它调用这个函数:

def processServer(self):
income = str(self.ws.readAllStandardOutput())
print(income)

在桌面上,它运行良好。它流入应用程序。但是,当程序在 Raspberry Pi 上运行时,它仅在脚本 ws.py 终止后显示其读取的内容。

我读到这与 Python 中的输出缓冲有关。我已经尝试过添加 -u 标志之类的方法,但没有骰子。关于如何在使用 readAllStandardOutput() 时清除此缓冲区有什么建议吗?

我尝试实现 Disable output buffering 中的一些内容但似乎没有什么可以解决这个问题。

感谢任何帮助!

最佳答案

您可以通过

立即刷新输出
print(income, flush=True)

有关更多信息,请参阅 How to flush output of Python print?

关于python - PyQt5 中 QProcess 的刷新缓冲区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40414230/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com