有什么方法可以加快pexpect的速度或使用内置的python函数吗?

时间:2018-10-23 21:23:48

标签: python pexpect

我有一个交互式控制台程序,需要从中提取数据。我输入一个ID号,它会打印出大约10行阅读的文字,然后重复我的操作。我之前编写了一个C程序并使用了QProcess。我正在将代码移植到python。我不能使用popen.communicate,因为它是交互式的(我需要发送多个输入)。

代码是这样的:

import pexpect
p=pexpect.spawn(exe_path)
for idnumber in idlist:
    p.write(idnumber)
    p.expect("Enter ID number:")
    text=p.before
    ... process text ...

现在,执行循环100次迭代需要18秒。我尝试删除我代码中的所有“ ...过程文本...”部分,但并没有改变速度。我的C用不到一秒钟的时间即可处理2500次迭代。我也尝试过使用QProcess来实现,并且还可以在不到一秒钟的时间内完成。

0 个答案:

没有答案