[英]How to run a command line program with interactive inputs from python?
我是Python的新手。 我使用從Windows命令提示符運行的分子建模程序(Fortran,無源代碼),該命令提示符提示用戶插入變量,例如對稱性,分子數,文件名等,然后運行模擬並輸出結果模擬為.pdb和.txt文件。 在建模程序中,我必須等待特定的提示輸入每個變量。
我想使用python自動執行輸入過程,每次更改一個變量。 python程序如下所示:
1)啟動建模程序(“牧場”)
2)在程序提示時,依次輸入var 1,var 2,var 3等。
3)生成輸出文件
4)使用新的變量1返回第一,保持所有其他變量相同。
我無法弄清楚如何執行步驟2。我認為子流程應該可以工作,但是我無法弄清楚如何僅在建模程序提示時輸入每個變量。 甚至有可能這樣做嗎?
謝謝。 我正在運行Windows 7。
您想查看subprocess
模塊,特別是Popen.communicate()
了stdout=subprocess.PIPE, stdin=subprocess.PIPE
Popen.communicate()
stdout=subprocess.PIPE, stdin=subprocess.PIPE
Popen.communicate()
。
該鏈接提供了一些非常好的示例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.