How to pass variable argument using system command?

13 views (last 30 days)
x0=[45,360,45,180];
ind0=x0(1);
ind1=x0(2);
ind2=x0(3);
ind3=x0(4);
system(['python /home/prateek/matlab_R2017a_glnxa64/projects/saobjective/fh.py ind0 ind1 ind2 ind3']);
In fh.py file, I have given:
a = (sys.argv[1])
b = (sys.argv[2])
c = (sys.argv[3])
d = (sys.argv[4])
print a
ind=[a,b,c,d]
e=fitness(ind)
The problem is here print a should print 45 but it is printing ind0.

Accepted Answer

Walter Roberson
Walter Roberson on 7 Mar 2018
fh_file = '/home/prateek/matlab_R2017a_glnxa64/projects/saobjective/fh.py'
cmd = sprintf('python "%s" %g %g %g %g', fh_file, ind0, ind1, ind2, ind3);
system(cmd)

More Answers (0)

Categories

Find more on View and Analyze Simulation Results in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!