Populate pyargs() arguments with the contents of a string cell array.

2 次查看(过去 30 天)
Hello everybody,
I'd like to know if there's a way to populate the arguments of pyargs() with the contents of an array, instead of hardcoding the values like the documents tell us.
I have this simple function I'm using for testing:
function s=my_test(varargin)
extraParams=cell(numel(varargin),2);
for i=1:numel(varargin)
str = varargin{i};
C = strsplit(str,'=');
extraParams{i,1}=C{1};
extraParams{i,2}=C{2};
end
s=extraParams;
end
If I use these inputs:
a=my_test('k1=v1','k2=v2','k3=v3')
I get:
a=
'k1' 'v1'
'k2' 'v2'
'k3' 'v3'
How can I pass these values to pyargs() like this?
pyargs('k1','v1','k2','v2','k3','v3')?
Thankful for any help you could bring :)

回答(2 个)

Walter Roberson
Walter Roberson 2018-5-22
a = my_test(TheCellArray{:})

Stephen23
Stephen23 2018-5-22
编辑:Stephen23 2018-5-22
tmp = a.';
pyargs(tmp{:})

类别

Help CenterFile Exchange 中查找有关 Call Python from MATLAB 的更多信息

标签

产品


版本

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by