Scilab Function
Last update : 23/10/2007
list - Objet Scilab, Définition d'une liste
Calling Sequence
-
list(a1,....an)
Description
Crée une
liste
avec les éléments
ai
qui sont des objets Scilab arbitraires (
matrice,
liste, ...
). Le numéro de type des objets liste
(renvoyé par la fonction
type
) est 15.
list()
crée une liste vide (0 élément).
Operations sur les listes
-
-
extraction
: [x,y,z...]=L(v) où v est un vecteur d'indices;
[x,y,z]=L(:) extrait tous les éléments.
-
insertion en position i
: L(i)=a . Remarque : l'opération L(i)=a
avec i > 1 + size(L) ne génère pas d'erreur les
entrées en position 1 + size(L), ..., i-1 étant
alors indéfinies. Par contre l'extraction d'un élément
indéfini en génère une.
-
ajouter un élément en queue de liste
: L($+1)=e.
-
ajouter un élément en tête de liste
: L(0)=e. (remarque : après cette opération e est
en position 1, la position des éléments initiaux de la liste étant
décalée vers la droite).
-
suppression
: L(i)=null() supprime l'élément en position i de la liste L.
-
concaténation de deux listes
: L3 = lstcat(L1,L2).
-
nombre d'éléments d'une liste
: vous pouvez utiliser nb_elm = size(L)
ou encore nb_elm = length(L).
-
itérer avec une liste
: il est possible d'utiliser une liste L pour piloter une boucle
for
:
for e=L,...,end est une boucle avec length(L)
itérations, la variable e de la boucle prenant la valeur L(i)
à l'itération i.
Remarques
Scilab propose deux autres sortes de liste, les
tlist
(pour listes typées)
et les
mlist
qui sont très utiles pour définir de nouveaux types de
données avec possibilité de surcharge des opérateurs classiques (voir
overloading
).
Les tableaux multidimensionnels de scilab (les
hypermatrices
) sont en fait
codés comme des mlist.
Les structures Matlab (struct) sont aussi utilisables.
Examples
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) // doit être nul
See Also
null
,
lstcat
,
tlist
,
insertion
,
extraction
,
size
,
length
,