Aller au contenu

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 exemple zeros = [0] * 10 crĂ©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 boucle

    aprè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.