我刚刚开始研究Python,我一直在尝试从Python运行外部可执行文件.
我有一个用Fortran编写的程序的可执行文件.假设可执行文件的名称是flow.exe.我的可执行文件位于C:\Documents and Settings\flow_model.我尝试了os.system和popen命令,但到目前为止我无法使其工作.以下代码似乎打开命令窗口,但它不会执行模型.
# Import system modules
import sys, string, os, arcgisscripting
os.system("C:/Documents and Settings/flow_model/flow.exe")
Run Code Online (Sandbox Code Playgroud)
我怎样才能解决这个问题?
我正在使用subprocess.popen运行子程序.当我从命令窗口(cmd.exe)启动我的Python程序时,程序会随着程序的发展在窗口中写入一些信息和日期.
当我不在命令窗口中运行我的Python代码时,它会为这个子程序的输出打开一个新的命令窗口,我想避免这种情况.当我使用以下代码时,它不会显示cmd窗口,但它也不会打印状态:
p = subprocess.Popen("c:/flow/flow.exe", shell=True, stdout=subprocess.PIPE)
print p.stdout.read()
Run Code Online (Sandbox Code Playgroud)
如何在程序输出中显示子程序的输出?