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

Matlab调用Python接口报错:无法识别函数或变量'py.dict'

Matlab调用Python接口报错排查与解决

问题场景

执行以下Matlab代码配置Python环境并运行简单示例:

pyenv('Version', ... 
  '../bin/python', ... 
  'ExecutionMode','OutOfProcess') 

pyrun("l = ['A','new','list']")  
l

触发报错:

错误使用 feval
无法识别的函数或变量 'py.dict'。

排查与修复方案

  • 校验Python路径有效性:你使用的相对路径../bin/python可能指向不存在的Python可执行文件,或者Matlab当前工作目录与预期不符。先执行pwd查看Matlab当前路径,确认../bin/python是否存在;建议改用绝对路径指定Python位置,避免相对路径带来的歧义。
  • 确认版本兼容性:Matlab对Python版本有严格限制,不同Matlab版本支持的Python版本范围不同。检查你使用的Python版本是否在当前Matlab版本的支持列表内,若不兼容则更换匹配的Python版本。
  • 修正变量访问方式:直接输入l尝试访问Python变量的方式有误,Matlab中访问Python环境变量需要通过py.前缀。同时l是Matlab内置函数(用于创建矩阵),存在命名冲突。修改代码如下:
% 改用绝对路径配置Python环境
pyenv('Version', '/你的Python绝对路径/bin/python', 'ExecutionMode','OutOfProcess')

% 运行Python代码,使用非冲突变量名
pyrun("my_list = ['A','new','list']")
% 通过py.前缀访问Python变量
py.my_list
  • 验证Python环境可用性:先在系统终端中运行指定路径的Python,确认能正常启动并执行代码,排除Python环境本身的问题后再重新在Matlab中配置pyenv。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 18:29:55