Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2024.1.0 - Français


list

Objet Scilab, Définition d'une liste

Séquence d'appel

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)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.

Exemples

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

Voir aussi

  • null — supprime un élément d'une liste, ou un champ d'une structure, M-liste ou T-liste
  • lstcat — concaténation de listes
  • list2vec — Concatenates list entries in a matrix.
  • vec2list — Inverse function of list2vec.
  • tlist — Objet Scilab. Définition d'une liste typée
  • mlist — Objet Scilab, définition d'une liste typée
  • insertion — insertion/modification dans une variable
  • extraction — extraction à partir d'une matrice ou d'une liste
  • size — taille d'un objet
  • length — Number of characters of a string. Number of elements of an array or list.
Report an issue
<< isstruct Listes Structures Cells list2vec >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Jun 17 17:52:28 CEST 2024