我使用python的pexpect創建一個程序,允許用戶通過網站與FORTRAN程序進行交互。從FORTRAN程序我收到的錯誤:使用Pexpect通過命令行連接Python與Fortran
open: Permission denied apparent state: unit 4 named subsat.out.55 last format: list io lately writing sequential formatted external IO 55
當我嘗試:
p = pexpect.spawn(myFortranProgram,[],5)
p.logfile_read = sys.stdout
p.expect("(.*)")
p.sendline("55")
據我瞭解,我可能會在發送55到錯誤的輸入單元。如何使用Python中的pexpect將輸入正確地發送到FORTRAN程序?
謝謝。
編輯:當p.sendline的參數是空的(例如p.sendline()),還是僅包含空格,則程序前進按預期方式。在將非空格值發送給FORTRAN程序時,是否需要以某種方式指定輸入格式?
這並不值得繼續。如果您需要更多幫助,則需要提供有關程序的更多數據以及如何使用它們,特別是Fortran程序如何獲取數據。 – GreenMatt
關於pexepect的一個非常重要的點:它只能在linux下運行。有一個Windows端口,但我遇到了很多問題讓它在我的盒子上運行。 –