В настоящее время я использую Octave в Windows через Xoctave, и у меня возникла следующая проблема.
Я попытался запустить скрипт, который начинается с
activity = input("What would you like to do? ");
Когда я вызывал этот скрипт в консоли, он печатает
What would you like to do?
Когда я набираю номер и нажимаю ввод, он возвращает:
What would you like to do? 1
error: `What' undefined near line 4 column 1
>>
Создается впечатление, что консоль пытается проанализировать выходные данные предыдущей команды (т. Е. Пытается проанализировать всю строку, включая текст приглашения).
Чтобы получить более четкое представление о том, что я пытаюсь сказать, просто сохраните сценарий, содержащий только строку:
m = input('Enter m: ');
затем попробуйте запустить этот скрипт в Xoctave. Я верю, что вы тоже получите ту же ошибку.
Я полагаю, что это связано с изменением поведения синтаксического анализа по умолчанию, но я не уверен, как.
@ Bart_Kiers
Я думаю, что вы не поняли = \
Когда я делаю то, что вы только что прописали, он хранит:
активность = что бы вы хотели сделать? 1
Я хочу просто сохранить активность = 1
единственный способ, который я нашел, это сделать:
активность1 = вход («выбор 1 или 0»);
activity2 = strrep (активность, «Выбрать 1 или 0», «»);
активность = str2num (деятельности2)
На что он выведет:
активность = 1
Чтобы прояснить проблему, она создает аналогичную, но значительно более неприятную проблему, используя функцию меню.
если я сделаю это:
number=menu("What's your favorite number?",1,2,3,4,5);
подсказывает:
[ 1] 1
[ 2] 2
[ 3] 3
[ 4] 4
[ 5] 5
pick a number, any number:
Я набираю 3 и нажимаю ввод, и он возвращает: «ошибка: ввод недопустим или выходит за пределы диапазона», потому что он пытается проанализировать всю строку, включая приглашение! = [помогите!
Также я использую Xoctave для взаимодействия с командной строкой Octave в Windows.
Не уверен, поможет ли это.
Спасибо!