2013-07-18 66 views
0

我們有一個場景,我們有2個期望的結果,我們希望執行。 下面,發送狀態命令後,它會給出2個可能結果的結果。 「運行」或「不運行」如何設置期望多個結果的pexpect

t.sendline('status') 
i=t.expect('run') 
if i!=0: 
    t.sendline('start') 
else: 
    break 

當我們運行腳本,它一直被卡在i=t.expect('run')行,當 狀態返回「無法運行」

如何失敗我們將其設置爲: 1.當執行i=t.expect('run')時它不會停止腳本退出並繼續運行。 2.我們可以在腳本中使用2個預期結果來執行結果。

感謝所有 真誠

回答

3
t.sendline('status') 
i=t.expect(['run','not run']) 
if(i==0): 
    t.sendline('start') 
else: 
    break; 

來源http://www.noah.org/wiki/pexpect

+0

參見:文檔的期望方法:http://pexpect.readthedocs.org/en/latest/api/pexpect.html#pexpect .spawn.expect –