Expressions de listes
Les opérateurs de comparaison s'appliquent aussi aux listes dynamique: array, dict.
Les opérateurs binaires d'intersection et union permettent d'effectuer les mêmes opérations sur des listes.
En outre les listes disposent d'un opérateur particulier, "in", qui sera détaillé dans un autre chapitre.


  La liste des opérateurs sur listes (array, dict)
= < > <= >= <>
+
-
[ ]
in
&
|
^
comparent le contenu de deux listes.
concatène deux listes (des doublons peuvent en résulter).
enlève d'une liste les éléments d'une autre (sauf doubles).
indexation, slicing or splicing (voir Array et Dict).
teste si un élément est dans la liste.
intersection.
union.
complément d'intersection.

Exemple de "in":
    if "a" in array("a", "b", "c") print "trouvé"

L'intersection de deux listes retourne les éléments communs aux deux listes.
L'union de deux listes retourne l'ensemble de leurs éléments.
Les éléments appartenant aux deux ne sont gardés qu'une fois. Si une des listes a déja un élément en double, seule la première occurence est conservée.

 L'expression de liste est une fonctionnalité puissante de Scriptol. Vous pouvez par exemple tester si une liste fait partie d'une autre:

Exemple d'intersection de tableaux array a = array(2,3,4)
array b = array(1,2,3,4,5,6)
if (a & b) = a)
   print "a fait partie de b"
else
   print "pas en b"
/if
Affiche: > a fait partie de b

On peut ainsi remplacer un algorithme par une simple expression conditionnelle.


 Exercices

1) Concaténation de deux tableaux.
On a deux tableaux x et y:
array x = array(1,2,3,4)
array y = array(4,5,6,7)
Comment les réunir un un seul tableau? Afficher le résultat avec la méthode de tableau: display()

Réponse