我正在尝试使用numpy.f2py
运行一个简单的Fortran子例程,如下所述:http://docs.scipy.org/doc/numpy/user/c-info.python-as-glue.html#calling-f2py-from-python
当我尝试从python编译(f2py.compile(source, modulename='add')
)时,我收到以下错误:
"Could not locate executable C:Python27pythonw.exe
Executable C:Python27pythonw.exe does not exist"
在查找此文件时,我发现我的系统中确实存在C:\Python27\pythonw.exe
,因此该路径可能存在问题吗?
在任何情况下,有关如何使我的代码有效的任何建议吗?
答案 0 :(得分:2)
我找到了解决问题的快速方法。但是,我不能保证在使用它时不会有任何其他因素。
在文件中:
C:\Python27\Lib\site-packages\numpy\f2py\__init__.py
第40行,改变
s,o = exec_command(c)
到
s = os.system(c)
似乎主要错误在于numpy.distutils.exec_command,它在调用python时似乎省略了反斜杠。再次,我可能正在玩我不理解的力量,通过os.system调用替换更多涉及的exec_command。但它对我有用。
答案 1 :(得分:0)
另一种没有"失败" o
中的output
(s = os.system(c)
)将实施
c = c.replace("\\", "\\\\")
在s,o = exec_command(c)
或status, output = exec_command(c)
之前。