Сохранить несколько переменных из списка имен за один раз без использования цикла - PullRequest
3 голосов
/ 14 мая 2019

Я пытаюсь сохранить список переменных из рабочей области в файл .mat.Проблема, с которой я столкнулся, заключается в том, что я пытаюсь сделать из нее функцию, и эта функция должна иметь возможность обрабатывать список переменных, которые нужно сохранить.Я мог бы зациклить, как показано ниже:

vars = {'a','b','c'}; % names of variables
for k = 1:numel(vars)
    save(filename,vars(k),'-append');
end

, но это не элегантно для меня, и флаг -append замедлил процесс.Я пытаюсь добиться чего-то вроде этого:

vars = {'a','b','c'}; %names of variables
save(filename,vars);

Возможно ли это?

1 Ответ

3 голосов
/ 14 мая 2019

Поскольку save ожидает, что каждое имя переменной является отдельным входным аргументом, вы можете использовать список с разделителями-запятыми , сгенерированный из массива ячеек:

save(filename, vars{:})
...