为什么fortran exe在python调用时无法找到文本文件?

时间:2016-05-04 17:35:08

标签: python windows python-3.x fortran gfortran

Windows 10,GFortran,Python 3.4

我正在创建一个python可执行文件(GUI),它将调用几个fortran可执行文件。 fortran可执行文件调用由python可执行文件创建的文本文件keyline.txt。 fortran可执行文件和文本文件位于标有F77_EXE的子文件夹中。

从命令控制台调用时,fortran可执行文件无错误地读取keyline.txt。但是,当被python调用时,fortran代码无法找到文本文件。

我发现如果我编写fortran可执行文件就像它们与python可执行文件位于同一文件夹中一样,它们运行正常。要明确的是,而不是flnm = 'keyline.txt'inquire(file=TRIM(flnm),EXIST=exists)(fortran可执行文件和keyline.txt在同一个子文件夹中)我写flnm = 'F77_EXE/keyline.txt',好像可执行文件是一个文件夹(用python代码)。

问题:为什么fortran可执行文件的行为方式如此? python代码是暂时移动可执行文件吗?

Python调用

subprocess.call(os.path.join(floc+'F77_EXE', 'TIMESTAMP.exe'), shell=True)

其中floc是python可执行文件的位置,F77_EXE是包含fortran可执行文件和文本文件的子文件夹,TIMESTAMP.exe是要调用的fortran可执行文件。

0 个答案:

没有答案