我试图在Qt小部件中显示子进程中写到stdout的内容。
我正在以这种方式开始该过程:
import subprocess
subprocess.call(["program_name", "arguments"])
我想我必须让一个类像stdout一样工作,并在调用子流程时指出来,我尝试了以下方法:
class Log:
def __init__(self, qtWidget):
self.qtWidget = qtWidget
def write(self, data):
self.qtWidget.append(data)
# (...)
log = Log(theWidget)
sub.process.call(["program_name", "arguments"], stdout=log)
但我收到一条错误消息:AttributeError:'Log'对象没有属性'fileno'
除了重定向到文件然后有一个不定期读取文件的计时器外,我真的想不出任何其他主意。
宝慕林4294392
相关分类