使用从python调用几个matlab命令操作系统

2024-06-24 13:16:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我只想从Python调用两个matlab命令:第一个命令只是添加所需路径的文件夹和子文件夹(addpath(genpath('c:/file1/file2'))),而第二个命令调用我想要使用的函数(myfunction.m)。在

例如,当我需要调用一个函数时,我总是使用os.system("command"),当我想调用两个函数时,我总是使用os.system("command1 | command2"),所以我尝试了:

os.system("matlab -r addpath(genpath('c:/file1/file2')) | matlab -r myfunction") 

但显然这会打开两个matlab窗口,第一个用于第一个命令,第二个用于第二个命令。我想要的是在同一个窗口中一个接一个地调用这两个命令。但是,如果我简单地尝试:

^{pr2}$

它不工作…它执行第一个命令(addpath),但它不调用函数。。。。在

我做错了什么??你知道怎么做吗??我读了很多帖子,但他们并不是很有帮助,即使这是一个非常简单的案例。在

提前谢谢各位!!我真的很感谢你的帮助


Tags: 函数命令路径文件夹ossystemfile1command
1条回答
网友
1楼 · 发布于 2024-06-24 13:16:41

其目的是执行以下操作:

matlab.exe -r "addpath('c:\some\folder'); someFunction(); quit;"

现在您必须将其插入os.system调用中,并正确转义引号。。。在

例如,您可以尝试:

^{pr2}$

(注意,反斜杠和双引号被转义,加上我添加了-wait选项,这样命令在MATLAB完成执行之前不会返回)。在

相关问题 更多 >