这是我的Python代码
DosCmd = 'matlab -wait -automation -nosplash -r "run \'' + to_run + "'\""
os.system(DosCmd)
curve_file = open('curve/'+str(index)+'.curve','r')
Run Code Online (Sandbox Code Playgroud)
我在 python 脚本中运行 .m 文件,它工作正常,但执行 .m 文件后,它卡在os.system(DosCmd)
. 为了让 python 运行以下代码,我必须关闭这个窗口:
由于这部分代码处于循环中,这确实让我感到不安。我在网上发现有人说matlab在执行.m文件后可以自动退出,但我的却没有。有人能告诉我我做错了什么或者我应该做什么吗?谢谢!
exit
添加对您执行的 MATLAB 代码的调用。
DosCmd = 'matlab -wait -automation -nosplash -r "run \'' + to_run + "', exit\""
Run Code Online (Sandbox Code Playgroud)
请注意,您的引用看起来有点奇怪,但您只需添加, exit
到在参数中传递的命令的末尾即可-r
。
顺便说一句,这样会容易得多,subprocess
这样您就可以让我们subprocess
为您进行报价。
subprocess.check_call(['matlab', '-wait', '-automation', '-nosplash',
'-r', 'run \' + to_run + \', exit'])
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3512 次 |
最近记录: |