Looking for python Keywords? Try Ask4Keywords

Python LanguageListe des compréhensions


Introduction

Les compréhensions de liste en Python sont des constructions syntaxiques concises. Ils peuvent être utilisés pour générer des listes à partir d'autres listes en appliquant des fonctions à chaque élément de la liste. La section suivante explique et illustre l'utilisation de ces expressions.

Syntaxe

  • [x + 1 pour x dans (1, 2, 3)] # compréhension de liste, donne [2, 3, 4]
  • (x + 1 pour x dans (1, 2, 3)) # expression du générateur, donnera 2, puis 3, puis 4
  • [x pour x dans (1, 2, 3) si x% 2 == 0] # liste compréhension avec filtre, donne [2]
  • [x + 1 si x% 2 == 0 sinon x pour x dans (1, 2, 3)] # compréhension de liste avec ternaire
  • [x + 1 si x% 2 == 0 sinon x pour x dans la plage (-3,4) si x> 0] # liste compréhension avec ternaire et filtrage
  • {x pour x dans (1, 2, 2, 3)} # définir la compréhension, donne {1, 2, 3}
  • {k: v pour k, v dans [('a', 1), ('b', 2)]} # dict la compréhension, donne {'a': 1, 'b': 2} (python 2.7+ et 3.0+ seulement)
  • [x + y pour x dans [1, 2] pour y dans [10, 20]] # Boucles imbriquées, donne [11, 21, 12, 22]
  • [x + y pour x dans [1, 2, 3] si x> 2 pour y dans [3, 4, 5]] # Condition vérifiée au 1er pour la boucle
  • [x + y pour x dans [1, 2, 3] pour y dans [3, 4, 5] si x> 2] # Condition vérifiée en 2ème pour la boucle
  • [x pour x dans xrange (10) si x% 2 == 0] # condition vérifiée si les nombres en boucle sont des nombres impairs

Remarques

Les compréhensions sont des constructions syntaxiques qui définissent des structures de données ou des expressions propres à un langage particulier. Une utilisation correcte des compréhensions réinterprète celles-ci en expressions faciles à comprendre. En tant qu'expressions, elles peuvent être utilisées:

  • à droite des missions
  • comme arguments pour les appels de fonction
  • dans le corps d' une fonction lambda
  • comme déclarations autonomes. (Par exemple: [print(x) for x in range(10)] )

Liste des compréhensions Exemples Liés