从python脚本运行file.gms

时间:2016-04-28 17:31:20

标签: python python-2.7

我需要创建一个运行文件gams(myfile.gms)的python脚本。 我的文件位于F:\Otim\correct文件夹中,因此我使用的是我在此论坛中看到的代码的一部分。我做了:

  import subprocess
  subprocess.check_call(["F:\Otim\correct\myfile.gms"])

我收到错误:

Runtime error 

Traceback (most recent call last):
File "<string>", line 80, in <module>
File "C:\Python27\ArcGIS10.2\Lib\subprocess.py", line 506, in check_call retcode = call(*popenargs, **kwargs)
File "C:\Python27\ArcGIS10.2\Lib\subprocess.py", line 493, in call return Popen(*popenargs, **kwargs).wait()
File "C:\Python27\ArcGIS10.2\Lib\subprocess.py", line 679, in __init__errread, errwrite)
File "C:\Python27\ArcGIS10.2\Lib\subprocess.py", line 896, in _execute_child
 startupinfo)
WindowsError: [Error 193] %1 is not a valid Win32 application
是的,有人能帮帮我吗?感谢

1 个答案:

答案 0 :(得分:0)

我从未使用过gams但是在快速查看www.gams.com之后,听起来myfile.gms不是要执行的文件,而是输入文件作为gams可执行文件的参数。

所以你应该尝试类似的东西:

import subprocess
subprocess.check_call([r"C:\path\to\programs\GAMS.exe",r"F:\Otim\correct\myfile.gms"])

注意:有一个GAMS python API可以为您提供更便携的解决方案。