У меня есть Matlab function
, который имеет многочисленные значения параметров ввода значений. Для некоторых имен параметров существует много возможных значений (которые не всегда очевидны), которые пользователь может выбрать. То, что я хотел бы сделать, это: IF пользователь называет имя, но НЕ дает значение, THEN Matlab будет отображать возможные записи И THEN принять вход пользователя.Функция Matlab - запросить пользовательский ввод для заданного аргумента
Например, у меня есть такая функция, как:
function getSomeData(varargin)
p=inputParser;
defaultData='abc';
addParameter(p, 'Data', defaultData);
parse(p,varargin{:});
end
Если бы пользователь вызвать функцию в окне командной строки, например:
>> getSomeData('Data')
, в котором пользователь не дать значение 'Data'
, окно будет отображать и запрашивать
>> getSomeData('Data')
No value for 'Data' Given
Possible Values of 'Data' are:
'abc'
'def'
'other'
Please input your 'Data':
, в котором I C ould использовать функцию result=input(prompt)
.
Любая помощь или совет очень ценится! Cheers
Мне тяжело следовать вашему коду. Итак, вы говорите, что у вас уже есть функция, которая принимает пары имен и значений? Как начинаются эти значения имен? Кажется, что ваша функция 'getSomeData' просто установила некоторые данные по умолчанию, а затем выполняет функцию' parse'. Что делает 'parse'? Можете ли вы показать нам ** все ** вашего кода? – rayryeng