Les listes⚓︎
On peut créer une liste :
- en donnant explicitement la liste de ses éléments, par exemple
amis = ["Pierre", "Paul", "Alice", "Bob"] - lorque la liste est composée de le répétition du même élément on peut utiliser
*à la façon de ce qui a été vu sur les chaines de caractères, par exemplezeros = [0] * 10crée une liste contenant 10 zéros. -
par ajouts successifs d'éléments à l'aide de
append```python liste = [] for i in range(10): liste.append(i) # ajout de l'élément i à chaque tour de boucleaprès la boucle liste vaut [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]⚓︎
``` * par *compréhension* c'est-à -dire en indiquant à l'aide d'une boucleforles éléments qui composent la liste (à la façon dont on définit parfois des ensembles en mathématiques). Par exempleentiers = [i for i in range(10)]crée la liste[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]`.
|impairs = [ 2 * i + 1 for i in range(25)] génère la liste [1, 3, 5, ..., 47, 49].
Exemples de listes par compréhesion :⚓︎
-
Tous les entiers de 1 Ă 100 inclus:
l100 = [ i + 1 for i in range(100)] -
Tous les nombres impairs de 1 Ă 100:
impairs = [ 2 *i + 1 for i in range(50) ] -
Tous les multiples de 10 de 10 Ă 1000 inclus
[10,20,30....,980,990,1000]mul10 = [10*(i+1) for i in range(100)] -
Toutes les lettres de l'alphabet en minuscule
lettres = [ chr(i) for i in range(97,123)] -
Les puissances de 1 de 10 Ă 1 000 000
puissance10 = [ 10 ** ( i+1 ) for i in range(6)]
Dictionnaires et tuples par compréhension⚓︎
Il est aussi possible de créer des dictionnaires et tuples par compréhension
-
Les caractères ascii et leur code en valeur pour les codes de 48 à 122 inclus
code_ascii = { chr(i):i for i in range(48,123) } -
Tuples des 10 premières puissances de 2
puiss2 = tuple(2 ** i for i in range(10))
Info
tuple est précisé devant les parenthèses pour générer un tuple. En effet les parenthèses servent aussi pour les générateurs, et c'est ce qui est évalué sans préciser tuple.