저는 python과 함께 pexpect를 사용하여 사용자가 웹 사이트를 통해 FORTRAN 프로그램과 상호 작용할 수있는 프로그램을 작성하고 있습니다. 내가하려고하면Pexpect를 사용하여 명령 행을 통해 Fortran과 Python 인터페이스하기
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)를 전송하고있는 FORTRAN 프로그램에서 나는 오류가 나타납니다입니다. 파이썬에서 pexpect를 사용하여 FORTRAN 프로그램에 입력을 올바르게 보내려면 어떻게해야합니까?
감사합니다.
편집 : p.sendline의 매개 변수가 비어있는 경우 (예를 들어, p.sendline()) 또는 예상대로 공백 만, 프로그램 진행이 포함되어 있습니다. 공백이 아닌 값을 FORTRAN 프로그램에 보내는 경우 입력 형식을 어떻게 든 지정해야합니까?
그다지 진행되지 않습니다. 더 많은 도움이 필요하면 프로그램에 대한 더 많은 데이터와이를 사용하는 방법, 특히 Fortran 프로그램이 데이터를 얻는 방법을 제공해야합니다. – GreenMatt
pexepect에 대한 매우 중요한 점은 linux에서만 실행됩니다. Windows 포트가 있지만 내 상자에서 실행되도록 여러 가지 문제가 발생했습니다. –