Running a Python Script with multiple inputs and outputs through Matlab

12 views (last 30 days)
Hallo, i have a pytho script with 10 inputs and 5 outputs and the on of the outputs is a list. I want to run this script throught matlab and give my inputs in matlab and then receive the outputs from Python in Matlab. Is that possible? I have tried some things, but i could redirect only one output from python to matlab. I am open to suggestion :)

Accepted Answer

Yongjian Feng
Yongjian Feng on 21 Aug 2021
One interesting trick is to use json. From python, serialize all the outputs into one single json string. In matlab, convert the json string back to json.
  2 Comments
Constantinos Florides
Constantinos Florides on 28 Aug 2021
Edited: Constantinos Florides on 28 Aug 2021
That is a very interesting idea!Is there a reason to pass from python a json string and not direct make a json file?
Yongjian Feng
Yongjian Feng on 29 Aug 2021
Yes, you can do it with a json file as well. But then you need to write and read the file. Also if you write to a file, it doesn't need to be json.

Sign in to comment.

More Answers (1)

Rhea Chandy
Rhea Chandy on 23 Aug 2021
Hello Constantinos,
I understand that you're trying to run python script in MATLAB and then recieve outputs from Python in MATLAB.
Along with the above answer, you can also take a look at this previously answered question: Running python script in matlab
You will find the following resources with more information and examples here:
  1 Comment
Constantinos Florides
Constantinos Florides on 28 Aug 2021
Yeap, i am trying to run a python script throught Matlab, i have seen these topics. They were very useful. The only part that i need to solve is to pass my outputs with json file to matlab:)

Sign in to comment.

Products


Release

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!