You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Python程序输出作为MATLAB程序的输入?

把Python输出作为MATLAB输入的几种实用方法

1. 用中间文件传递数据(最通用)

这是最稳妥的方式,适合大部分场景,尤其是数据量较大或者需要保留数据的情况。Python把输出写入文件,MATLAB再读取这个文件。常用的文件格式有这几种:

CSV格式(跨语言通用)

Python代码示例:

import csv

# 假设这是你的Python代码生成的输出数据
result_data = [[10, 20, 30], [40, 50, 60]]

# 写入CSV文件
with open('python_output.csv', 'w', newline='') as f:
    writer = csv.writer(f)
    writer.writerows(result_data)

MATLAB读取代码:

% 读取CSV文件到MATLAB数组
matlab_input = readmatrix('python_output.csv');
disp(matlab_input);

MAT格式(MATLAB原生格式,无格式转换损耗)

如果数据包含复杂结构(比如多维数组、字典),用MAT格式更方便,Python需要安装scipy库。

Python代码示例:

from scipy.io import savemat

# 把数据打包成字典(键会成为MATLAB中的变量名)
output_dict = {'sensor_data': [[1.1, 2.2], [3.3, 4.4]], 'labels': [0, 1]}
savemat('python_output.mat', output_dict)

MATLAB读取代码:

% 加载MAT文件,直接获取变量
load('python_output.mat');
disp(sensor_data);
disp(labels);

2. 在MATLAB中直接调用Python脚本/函数(集成度最高)

如果你的MATLAB已经配置好Python环境(可以用pyversion命令检查),能直接调用Python代码并获取返回值,无需中间文件。

步骤:

  1. 把Python逻辑封装成函数,比如:
# data_generator.py
def generate_input():
    # 这里写你的Python业务逻辑,生成输出
    return {'value': 100, 'array': [1, 2, 3]}
  1. 在MATLAB中调用这个函数:
% 先把Python脚本所在目录添加到MATLAB路径
addpath('/path/to/your/python/scripts');

% 调用Python函数
py_result = py.data_generator.generate_input();

% 转换为MATLAB兼容的类型(根据数据结构调整)
matlab_value = double(py_result.value);
matlab_array = double(py_result.array);

disp(matlab_value);
disp(matlab_array);

注意:如果MATLAB提示找不到Python环境,用pyversion命令指定你的Python安装路径(比如pyversion "C:\Python39\python.exe")。

3. 通过命令行管道传递文本数据(适合简单输出)

如果Python输出是简单的文本/数字,可以用命令行管道让MATLAB直接捕获输出。

Python代码示例(打印输出):

# simple_output.py
# 直接打印要传递的数据
print("5 10 15\n20 25 30")

MATLAB中捕获输出:

% 调用Python脚本,捕获命令行输出
[status, raw_output] = system('python simple_output.py');

% 把字符串转换为MATLAB数组
matlab_input = str2num(raw_output);
disp(matlab_input);

这种方式适合快速传递小量数据,缺点是复杂结构(比如字典、对象)不好处理。

内容的提问来源于stack exchange,提问作者Nour

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 12:06:30