Python 如何在windows上安装oct2py?

Python 如何在windows上安装oct2py?,python,octave,oct2py,Python,Octave,Oct2py,我想在python中安装oct2py。我正在使用Windows8.1 我使用命令easy_install oct2py,用标准的exe文件安装了octave。 现在根据,我应该加上八度音程 setx PATH "%PATH%;<path-to-octave-bin-dir> 有人能给我解释一下如何设置路径吗? 我应该在终端上运行的一个命令示例将非常有用。 谢谢 编辑: 我试过了 但我收到了一条奇怪的信息: WARNINGS: The data being saved is trun

我想在python中安装oct2py。我正在使用Windows8.1

我使用命令easy_install oct2py,用标准的exe文件安装了octave。 现在根据,我应该加上八度音程

setx PATH "%PATH%;<path-to-octave-bin-dir>
有人能给我解释一下如何设置路径吗?
我应该在终端上运行的一个命令示例将非常有用。 谢谢

编辑: 我试过了

但我收到了一条奇怪的信息:

WARNINGS: The data being saved is truncated to 1024 characters
SUCCESS: Specified value was saved

我个人并不熟悉八度音阶,但似乎我帮助解决了这个问题。对于将来可能偶然发现这个问题的其他人,以下是导致解决方案的过程:


如果出现错误,请安装GNU Octave并将其放入路径中,我搜索了源代码并从_utils.py中找到:

try:
    cmd = 'octave -q --braindead'
    session = subprocess.Popen(cmd, shell=True,
                             stderr=subprocess.STDOUT,
                             stdin=subprocess.PIPE,
                             stdout=subprocess.PIPE,
                             preexec_fn=os.setsid)
except OSError:
    octave_path = glob('c:/Octave/*/bin/octave.exe')[0]
    if not os.path.exists(octave_path):
        msg = ('Please install Octave at "c:/Octave" '
                 '  or put it in your path:\n'
                 'setx PATH "%PATH%;<path-to-octave-bin-dir>"')
        raise Oct2PyError(msg)
    else:
        cmd = 'octave -q --braindead'
        session = subprocess.Popen(cmd, shell=True,
                             stderr=subprocess.STDOUT,
                             stdin=subprocess.PIPE,
                             stdout=subprocess.PIPE,
                             preexec_fn=os.setsid)
except OSError:
    raise Oct2PyError('Please put the Octave executable in your PATH')
return session
试试看:
cmd='octave-q——braindead'
session=subprocess.Popen(cmd,shell=True,
stderr=subprocess.STDOUT,
stdin=子流程.PIPE,
stdout=子流程.PIPE,
preexec_fn=os.setsid)
除操作错误外:
octave_path=glob('c:/octave/*/bin/octave.exe')[0]
如果不存在os.path(倍频程路径):
msg=('请在“c:/Octave”处安装Octave'
'或将其放在您的路径中:\n'
“setx路径”%PATH%;“)
提高Oct2Yerror(msg)
其他:
cmd='octave-q——braindead'
session=subprocess.Popen(cmd,shell=True,
stderr=subprocess.STDOUT,
stdin=子流程.PIPE,
stdout=子流程.PIPE,
preexec_fn=os.setsid)
除操作错误外:
raise Oct2Yerror('请将Octave可执行文件放入路径')
返回会话
因此,当尝试执行命令
octave-q--braindead
失败时,会引发此问题


接下来,为了隔离问题,我询问OP命令是否在命令行上正确运行。运行该命令时,OP了解到
:MSYS外壳可用C:\Software\Octave-3.6.4\MSYS

将其包含在路径中是解决方案

tl;博士 路径不应该只是

C:\Software\Octave-[version]\bin

而是


C:\Software\Octave-[version]\msys

在命令行上调用
Octave-q--braindead
时会发生什么?在我的windows shell中,复制粘贴不起作用。也许您对以下行感兴趣:MSYS外壳可用C:\Software\Octave-3.6.4\MSYS??我应该用这个作为路径吗?好的,现在可以了。谢谢但是我怎么知道正确的目录是msys呢?今天我重新启动了电脑,程序不再工作了。当我尝试octave-q——braindead时,我得到:“octave不被识别为内部或外部命令、可操作程序或批处理文件”,我认为octave不在路径中。如果我在octave目录下,则该命令可以工作。我不知道具体如何工作,但知道它正在工作。我已经将环境变量添加到系统路径,而不是用户路径。我会在接下来的几天检查它是否有效
WARNINGS: The data being saved is truncated to 1024 characters
SUCCESS: Specified value was saved
try:
    cmd = 'octave -q --braindead'
    session = subprocess.Popen(cmd, shell=True,
                             stderr=subprocess.STDOUT,
                             stdin=subprocess.PIPE,
                             stdout=subprocess.PIPE,
                             preexec_fn=os.setsid)
except OSError:
    octave_path = glob('c:/Octave/*/bin/octave.exe')[0]
    if not os.path.exists(octave_path):
        msg = ('Please install Octave at "c:/Octave" '
                 '  or put it in your path:\n'
                 'setx PATH "%PATH%;<path-to-octave-bin-dir>"')
        raise Oct2PyError(msg)
    else:
        cmd = 'octave -q --braindead'
        session = subprocess.Popen(cmd, shell=True,
                             stderr=subprocess.STDOUT,
                             stdin=subprocess.PIPE,
                             stdout=subprocess.PIPE,
                             preexec_fn=os.setsid)
except OSError:
    raise Oct2PyError('Please put the Octave executable in your PATH')
return session