2013-10-17 168 views
1

我是Python新手。我使用從Windows命令提示符運行並提示用戶插入變量的分子建模程序(Fortran,無源代碼),例如,對稱性,分子數量,文件名等,然後運行仿真並將仿真結果輸出爲.pdb和.txt文件。在建模程序中,我必須等待特定的提示輸入每個變量。如何使用python的交互式輸入運行命令行程序?

我想使用python自動化輸入過程,每次更改一個變量。 Python程序應該是這樣的:

1)啓動的建模程序( 「牧場」)

2)輸入的VAR 1,變種2,VAR 3等,以便當由所述節目提示。

3)生成的輸出文件

4)返回一個數字用新變種1,保持所有其他變量相同。

我想不出如何做第2步。我認爲子過程應該工作,但我不知道如何僅在建模程序提示時輸入每個變量。這甚至有可能嗎?

謝謝。 我正在運行Windows 7.

回答

0

你想看看pexpect。但既然你在窗戶上,你想看看wexpect

+0

謝謝! Cygwin的優秀工作非常棒! – JACapp

1

你想看看subprocess模塊,具體是Popen.communicate()stdout=subprocess.PIPE, stdin=subprocess.PIPE設置。

This link給出了一些很好的例子。

相關問題