python调用MATLAB出错matlab.engine.MatlabExecutionError无法调用MATLAB函数报错

python调用MATLAB出错matlab.engine.MatlabExecutionError无法调用MATLAB函数报错

说明(废话)

python调用MATLAB,调用m文件中的函数,刚开始都没有问题,没问题是没有传参数等,今天改成传参的形式,就报错,无法传成功,况且根本无法调起来,根本没有进入MATLAB函数中…
关键是,输出的异常,捕获的异常还是乱码,看不出是什么问题,真的很头疼。

解决方案

MATLAB异常乱码

对这个问题,一般是编码的问题,查看pycharm中的编码是utf-8,而MATLAB中是GBK编码。看到有人说将编码改成一致就可以,好吧,我将pycharm的编码改成GBK编码,好像并不能奏效啊~
最后想了一个办法,将错误代码复制到TXT中,再用Notepad++修改字符的编码为utf8这时,可以看到一部分的乱码变成了正常。虽然还有部分是乱码,也无所谓了啦!
顺着这几个中文,查到了问题的原因。。。
在这里插入图片描述

python矩阵转MATLAB矩阵

矩阵不能直接传入MATLAB中,需要使用
matlab_point=matlab.double(point)

matlab_point=matlab.double(point)

这句话可以将python矩阵转为MATLAB矩阵

matlab.engine.MatlabExecutionError

其实这个问题并不是语法的问题,而是找不到MATLAB函数的问题。
我很奇怪,最开始我不传参数时,调用很顺利。
今天我再调用时,已不能正确调用,不管传参和不传参,都无法正常运行,都提示错误。由此推定是工作环境的问题。
最后发现,是pycharm未设置工作目录的原因。
在这里插入图片描述
在这里插入图片描述
就是这个work directory的设置
设置这个工作目录,就可以正常运行了。

编辑:myhappyandy

相关推荐

  1. 调用plt函数not ‘KeyboardModifier’

    2024-07-19 00:14:04       27 阅读
  2. Python调用pyspark整理

    2024-07-19 00:14:04       56 阅读
  3. Julia调用Matlab, Python以及R的微分方程求解器

    2024-07-19 00:14:04       61 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 00:14:04       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 00:14:04       71 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 00:14:04       58 阅读
  4. Python语言-面向对象

    2024-07-19 00:14:04       69 阅读

热门阅读

  1. UFS协议

    2024-07-19 00:14:04       22 阅读
  2. 透过三星Galaxy Z Fold6,看见高效生活的未来图景

    2024-07-19 00:14:04       20 阅读
  3. 设计模式之观察者模式

    2024-07-19 00:14:04       20 阅读
  4. 微服务拆分流程 (黑马商城拆分商品服务)

    2024-07-19 00:14:04       19 阅读
  5. C# 邮件发送

    2024-07-19 00:14:04       23 阅读
  6. Repl.it: 在线的集成开发环境

    2024-07-19 00:14:04       25 阅读
  7. js基础知识

    2024-07-19 00:14:04       26 阅读
  8. vivado H_SET and HU_SET

    2024-07-19 00:14:04       21 阅读
  9. xhdra的使用记录

    2024-07-19 00:14:04       20 阅读
  10. Docker无网环境下配置方法

    2024-07-19 00:14:04       19 阅读
  11. 手动实现堵塞队列

    2024-07-19 00:14:04       25 阅读