对于我正在处理的这个问题,我需要指出正确的方向:
假设我正在读取 C 程序的输出,如下所示:
while True:
ln = p.stdout.readline()
if '' == ln:
break
#do stuff here with ln
我的输出看起来像这一行:
TrnIq: Thread on CPU 37
TrnIq: Thread on CPU 37 but will be moved to CPU 44
IP-Thread on CPU 33
FANOUT Thread on CPU 37
Filter-Thread on CPU 38 but will be moved to CPU 51
TRN TMR Test 2 Supervisor Thread on CPU 34
HomographyWarp Traking Thread[0] on CPU 26
我想将“TrnIq:Thread on”和“37”捕获为两个单独的变量:一个字符串和一个来自输出“TrnIq:Thread on CPU 37”的数字。
对于其他行而言,它非常相似,例如从“HomographyWarp Traking Thread[0] on CPU 26”捕获“HomographyWarp Traking Thread[0] on”和#“26”。
唯一真正的挑战是这样的行:“CPU 38 上的过滤器线程,但将移动到 CPU 51”在这一行我需要“Filer-Thread”和#“51”而不是第一个 #“38”。
Python 有很多不同的方法可以做到这一点,我什至不知道从哪里开始!
提前致谢!