Générer un tableau avec Python☘
Un tableau de type list peut être défini en extension (on liste, entre crochets,
une à une les valeurs de chacun de ses éléments).
Il existe aussi d'autres méthodes pour définir un tableau.
Générer à l'aide d'une boucle☘
En partant d'un tableau vide, une boucle for ou while permet d'ajouter un
nouvel élément dans le tableau à chaque tour.
Exemple
Pour générer un tableau de 50 entiers de valeurs numériques consécutives à partir de 0 mais alternant entre positifs et négatifs,
on peut utiliser le code suivant :
1 2 3 4 | |
Génération d'entiers successifs☘
Pour générer le tableau tab des entiers consécutifs de d à f-1, on peut utiliser l'instruction :
1 | |
Variante
Pour le tableau tab des entiers consécutifs de d à f-1 avec un pas de p, on peut utiliser l'instruction :
1 | |
Exemples☘
-
Donner l’écriture en extension du tableau
Adéfini parA = list(range(3, 7)).Une solution
Une écriture en extension de
Aest[3, 4, 5, 6]. -
Par quelle instruction générer le tableau
Bdéfini en extension par[6, 10, 14, 18, 22, 26]?Une solution
Une définition possible de
BestB = list(range(6, 30, 4)).
Définir un tableau en compréhension☘
On dit qu'un tableau est généré en compréhension lorsqu'il est défini grâce à une propriété caractéristique :
[f(x) for x in tab]est le tableau formé des élémentsf(x)oùf()est une fonction etxprend successivement pour valeurs les éléments d'un tableautabdonné.[x for x in tab if condition]est le tableau formé des élémentsxd'un tableautabdonné qui respectent lacondition(le test) spécifiée.
Exemple
Définir par compréhension le tableau des entiers pairs compris entre 2 et 20 inclus.
1 | |
1 | |
Définir un tableau d'entiers aléatoires☘
On fait appel à la fonction randint() du module random de Python :
Rappel
La fonction randint() du module random permet de générer des entiers au hasard.
L'instruction randint(a, b) (où a et b sont des entiers tels que a \leqslant b) génère un entier aléatoire compris entre a (inclus) et b (inclus).
Voici un code pour générer un tableau de longueur 10 dont les éléments sont des entiers aléatoires compris entre 0 et 20 :
1 2 | |
Pythonnerie
Dans le code précédent, la variable k n'est pas « utilisée ».
Elle sert uniquement de compteur à la boucle Pour. Il est donc possible
de la remplacer par n'importe quel caractère, y compris le caractère
« underscore » :
1 2 | |
Exemple☘
Définir la fonction negatifs() qui prend en paramètre un tableau d'entiers et qui renvoie sous forme de tableau uniquement les nombres négatifs contenus dans le tableau d'origine.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
Une solution
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | |
Une autre solution
1 2 3 4 5 6 7 8 9 10 | |