Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - 日本語 -

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
See the recommended documentation of this function

Scilab help >> Data Structures > list

list

объект Scilab'а и функция определения списка

Последовательность вызова

list(a1, ..., an)

Описание

Создаёт список list с элементами ai, которые являются произвольными объектами Scilab'а (matrix, list,...). Тип объекта list равен 15. list() создаёт пустой список (0 элементов).

Операции со списками

выделение

[x,y,z,...]=L(v), где v - вектор индексов; [x,y,z,...]=L(:) выделяет все элементы.

вставка на место индекса i

L(i)=a (заметьте, что это не ошибка использовать L(i)=a с i > 1 + size(L), но некоторые элементы списка тогда не определены, и их выделение вызовет ошибку).

добавление элемента в хвост

L($+1)=e.

добавление элемента в начало

L(0)=e.

После этой операции e имеет индекс 1, исходные элементы будут сдвинуты вправо.

удаление

L(i)=null() удаляет i-тый элемент списка L.

конкатенация двух списков

L3 = lstcat(L1,L2).

число элементов списка

вы можете использовать либо nb_elm = size(L), либо nb_elm = length(L).

итерации со списками

можно использовать список L в цикле for: for e=L,...,end - цикл с числом итераций length(L), переменная цикла e будет равна L(i) на i-той итерации.

Примечания

Scilab предлагает также другие виды списков, тип tlist (типизированный список) и тип mlist (матричноориентированный список), которые полезны для определения нового типа данных с механизмом перегрузки операторов (гиперматрицы, которые являются многомерными массивами, в Scilab'е на самом деле имеют тип mlist).

Также доступны структуры struct Matlab'а.

Примеры

l = list(1,["a" "b"])
l(0) = "foo"
l($+1) = "hello"
l(2) = "toto"
l(3) = rand(1,2)
l(3) = null()
lbis = list("gewurtz", "caipirina" ,"debug")
lter = lstcat(l,lbis)
size(lter) - size(lbis) - size(l)  // должен быть ноль

Смотрите также

  • null — удаление элемента в списке
  • lstcat — конкатенация списков
  • tlist — объект Scilab'а и определение типизированного списка
  • mlist — объект Scilab'а, определение матричноориентированного типизированного списка
  • вставка — частичное присвоение или модификация значения переменной
  • выделение — выделение элемента матрицы или списка
  • size — размер объекта
  • length — length of object
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Oct 01 17:41:10 CEST 2012