matlab程序里调用python文件

用system调用:

参考连接:

https://zhidao.baidu.com/question/919137899588311499.html

https://blog.csdn.net/yanerhao/article/details/78669640

https://blog.csdn.net/u013685264/article/details/99596798

https://ww2.mathworks.cn/help/matlab/ref/system.html

matlab调用语句为:

[status, cmdout] = system('python xxx.py in.txt out.txt')

其中,xxx.py为要调用的文件,如果和当前的matlab文件不在同一目录下,记得要把路径补全;

in.txt 是xxx.py读入的文件;

out.txt 是xxx.py输出的文件。

即,matlab把所有参数输出到in.txt文件里,然后用system命令调python脚本。python脚本读in.txt文件做计算结果再写文件到out.txt中。最后matlab再读out.txt文件得到结果。

注意:

因为调用的python代码用到了pytorch的库。如果用上述语句运行的时候报错,“import error: from torch._C import * RuntimeError: stoi”

改为:

[status, cmdout] = system('env -i /home/hwy/anaconda3/bin/python3 xxx.py');

就不会报错了,如果没有in.txt 和 out.txt 也可以不写。

原文地址:https://www.cnblogs.com/Bella2017/p/11662678.html