DOM_LISTСписки объектов
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
Списки (доменного типа DOM_LIST) упорядочены наборы произвольного числа произвольных объектов MuPAD®, за исключением последовательностей и несуществующего объекта.
В MuPAD математическом построении n - кортеж реализован как тип данных DOM_LIST. Списки состоят из произвольного (конечного) количества произвольных объектов, за исключением последовательностей выражения, которые разделены в их операнды, когда помещено в список.
В отличие от наборов, списки могут содержать несколько копий того же элемента. Порядок элементов в списке сохраняется.
Списки могут быть пустыми.
Чтобы создать список для нашего первого примера, мы используем оператор $:
L := [x_.i $ i=1..10]
![]()
Этот список содержит 10 элементов:
nops(L)
![]()
Пятым элементом списка является x 5 и список элементов от x 3 через x, К 6 можно также получить доступ очень легко:
L[5], L[3..6]
![]()
Чтобы изменить элемент списка, мы используем индексируемую форму на левой стороне присвоения:
L[5] := 5
![]()
L
![]()
Обратите внимание на то, что это присвоение только изменяет L, не x 5:
x_5
![]()
Аналогично, мы можем изменить подсписок путем присвоения другого списка ему. Это может изменить длину списка:
L[3..6] := [1, 2]
![]()
nops(L), L
![]()
Используя список, когда функциональный символ создает список, полученный при помощи каждого элемента списка как функциональный символ для операндов, используемых, т.е. [f, g](x, y) результаты в [f(x, y), g(x, y)].
Принятие, что L список, число элементов в L может быть определен путем вызова nops(L).
К отдельным элементам списка получают доступ в форме L[1], L[2] и т.д. при подсчете с начала или L[-1], L[-2] и т.д. при подсчете от конца. Попытка получить доступ к элементу “вне” списка или L[0] повышает ошибку.
Непрерывные подсписки могут быть извлечены при помощи области значений в индексном доступе: L[2..4] возвращает список [L[2], L[3], L[4]]; L[2..-2] возвращает список L без его первого и последнего элемента.
Обе формы индексного доступа могут также использоваться в качестве левой стороны присвоения, cf. Пример 1.
Списки могут быть конкатенированы с точечным оператором, как в L1 . L2 или его функциональная форма, _concat.
Функциональный contains находит первое вхождение данного объекта MuPAD в списке. select и split может использоваться, чтобы извлечь те элементы из списка, выполняющего произвольный предикат.
Списки могут быть отсортированы с sort или prog::sort.
Функциональный map применяет функцию ко всем элементам списка, возвращая список результатов. Чтобы объединить два списка, поэлементные с некоторой функцией, используйте zip.
Присвоение списка к списку идентификаторов возможно и приводит к одновременному присвоению, cf. ?_assign.
Операнды списка являются его элементами.
Самый прямой способ создать список состоит в том, чтобы поместить последовательность объектов MuPAD (разделенный запятыми) между прямоугольными скобками, как в [1, 2, 3].