2014-10-05 106 views
2

我從我的應用程序(GUI)運行子進程。有時,子進程會要求用戶輸入。 我想知道如何檢查子進程是否在等待輸入,如果它正在等待,我想打開一個窗口詢問這個輸入,並將該值提供給子進程。 我可以處理打開對話窗口,但我想知道如何檢查它是否在等待以及如何爲子進程提供輸入。python如何知道子進程是否正在等待輸入

回答

2

如果您的子進程輸出一些提示用戶輸入數據,如:

請輸入您的姓名:

可以使用pexpect庫等待此提示,那麼你的數據提供給它。

child = pexpect.spawn('my-process -v') 
child.expect('Please enter your name:') 
child.sendline(user_name) 

Pexpect的還支持高級場景regexs和超時:

你可以看起來像一個代碼做到這一點。

相關問題