Un bon développeur cherchera toujours à augmenter sa productivité avec le temps. Il existe des astuces python qui permettent d' optimiser le code .
Une de ces astuces est la compréhension de liste ( ou liste en compréhension ou list comprehension ).
L'idée est simple: simplifier le code pour le rendre plus lisible et donc plus rapide à écrire et plus simple à maintenir.
Syntaxe
new_list = [function(item) for item in list if condition(item)]
Filter une liste
Prenons un exemple d'une liste:
>>> a = [1,4,2,7,1,9,0,3,4,6,6,6,8,3]
Nous voulons filtrer les valeurs de cette liste et ne garder que ceux dont la valeur est supérieure à 5:
>>> b = [] >>> for x in a: ... if x > 5: ... b.append(x) ... >>> b [7, 9, 6, 6, 6, 8]
Il est possible de faire exactement ce que fait ce bloc de code en une seule ligne:
>>> [x for x in a if x > 5] [7, 9, 6, 6, 6, 8]
Exécuter une fonction sur chaque item d'une liste
Prenons l'exemple d'une conversion de string en integer de plusieurs items:
>>> items = ["5", "10", "15"] >>> items = [int(x) for x in items] >>> print(items) [5, 10, 15]