2

Windows 7的

蟒蛇/蟒蛇版本3.4

八度版本 4.0.3

OCTAVE_EXECUTABLE = C:\Users\Heather\Octave-4.0.3\bin

大家好,

几天来,我一直在努力让 oct2py 使用 Spyder 在 Anaconda 中工作。我想知道是否有人能告诉我让它在 Windows 机器上的 Spyder 中工作的正确方法?基本设置可能或者我使用了错误的软件包?

到目前为止,我已经使用 Anaconda Cloud 安装了 oct2py 包:

conda install -c conda-forge oct2py=3.5.9

在 oct2py 的所有文档中,它提到需要下载 Octave 才能使 oct2py 工作。所以从这个页面pypi.python.org/pypi/oct2py,它提到从sourceforge获取Octave

https://sourceforge.net/projects/octave/files/Octave%20Windows%20binaries/

我从那里下载了 Octave 3.6.4,一位朋友帮助我在我的环境变量中获取 OCTAVE_EXECUTABLE 指向它。此时,我可以在命令行中输入“octave”,它会弹出一个 octave 实例,但 Spyder 永远不会识别出我安装了 octave。

尔格:

从 oct2py 导入八度

错误:无法导入名称八度

此时我意识到 sourceforge Octave 说它是一个补充包,所以我卸载了 Octave 3.6.4 并从http://www.gnu.org/software/octave/为 windows 安装了 Octave 4.0.3。现在,当我单击应用程序时,Octave 可以很好地打开,但命令行无法识别术语“octave”,我觉得这是退一步。我再次查看了我的环境变量,系统变量中存在 Octave 的新路径,我更新了 OCTAVE_EXECUTABLE 以指向新版本的 Octave(目录中没有空格)。但是即使在完全关闭并重新启动后,我的计算机也无法识别命令行中的“八度”,当我尝试运行 oct2py.Oct2Py() 时,Spyder 仍然看不到我有八度。

因此,在这一切之后,我想知道是否有人已经让 oct2py 在 Anaconda 中工作,但尤其是使用 Spyder?怎么会这样?我试图让我的 python 脚本打开并使用 .m 文件来执行一个函数并输出一个矩阵,该矩阵将在脚本中进一步用于计算。但是,如果我什至无法识别八度音阶,那么我不知道我将如何完成它。

代码示例:

from oct2py import Oct2Py
filename = 'filename'
oc = Oct2Py()
eph_matrix = oc.read_eph(filename)
print(eph_matrix) #nx25 matrix

如果我能让 python 识别 Octave 我可以通过导入行,我很有希望。

任何帮助将不胜感激。

4

1 回答 1

3

OCTAVE_EXECUTABLEorOCTAVE环境变量应直接指向可执行文件,而不是包含可执行文件的文件夹。因此,您可能希望将其设置为

OCTAVE_EXECUTABLE = C:\Users\Heather\Octave-4.0.3\bin\octave-cli.exe

另一种选择是提供可执行文件作为Oct2Py.

from oct2py import Oct2Py
octave = Oct2Py('C:\Users\Heather\Octave-4.0.3\bin\octave-cli.exe')

此外,如果您希望能够从 Windows 命令提示符运行它,您需要将包含可执行文件 ( 'C:\Users\Heather\Octave-4.0.3\bin') 的文件夹添加到PATH环境变量中。

于 2016-10-14T14:08:44.927 回答