Utiliser l’agrégation de données
Fait partie de la section Logique et flux du Journey Python de Coddy. Leçon 53 sur 78.
Les compréhensions de liste offrent un moyen concis de créer de nouvelles listes à partir d’itérables existants. Tu peux intégrer des fonctions d’agrégation de données comme sum(), min() et max() directement dans les compréhensions de liste pour effectuer des calculs sur les éléments de la nouvelle liste au fur et à mesure de sa création.
Calcul de la somme des carrés :
numbers = [1, 2, 3, 4, 5]
sum_of_squares = sum([n * n for n in numbers])
print(sum_of_squares)
# Résultat : 55Dans cet exemple, la compréhension de liste [n * n for n in numbers] crée une liste de carrés, et la fonction sum() calcule la somme de ces carrés.
Trouver le minimum des valeurs transformées :
numbers = [-3, -1, 0, 1, 3]
min_absolute = min([abs(n) for n in numbers])
print(min_absolute)
# Sortie : 0Ici, la compréhension de liste [abs(n) for n in numbers] crée une liste de valeurs absolues, et la fonction min() trouve la valeur minimale de cette liste.
Trouver la valeur maximale parmi les valeurs filtrées :
numbers = [1, 2, 3, 4, 5, 6]
max_even = max([n for n in numbers if n % 2 == 0])
print(max_even)
# Sortie : 6Dans cet exemple, la compréhension de liste [n for n in numbers if n % 2 == 0] crée une liste de nombres pairs, et la fonction max() trouve la valeur maximale de cette liste.
Défi
FacileÉcris une fonction sum_positive_evens qui prend une liste de nombres en entrée. Utilise une compréhension de liste pour filtrer les nombres pairs positifs, puis utilise sum() pour calculer leur somme. Retourne le résultat.
Exemple d’entrée :
numbers = [-10, -5, 0, 2, 4, 7, 10, 12]Exemple de sortie :
28Essayez vous-même
def sum_positive_evens(numbers):
# Écrivez le code iciCette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Logique et flux
1Exploration des variables
ConstantesAffectations multiples de variablesÉchange de variablesVariables de remplacementArrondir les nombresConversion en liste4Application de carnet de contacts
Afficher le menuAjouter un contact7Ensembles, partie 2
Opérations mathématiques, partie 1Opérations mathématiques, partie 2Révision - Chasse au trésorSous-ensembles et sur-ensemblesParcourir les ensemblesRévision - Suivi du tournoi10Compréhensions de liste de base
La syntaxeCréer des listes simplesAjouter des conditionsUtiliser l’agrégation de donnéesRécapitulatif - La maison des listesRécapitulatif - Les éléments de la liberté13Système de gestion des stocks
Présentation du projetAjouter un article2Dictionnaires, partie 1
Qu’est-ce qu’un dictionnaire ?Créer un dictionnaireAccéder aux valeursModifier des dictionnairesRécapitulatif – Gestionnaire de recettes5Prise de décision avancée
Opérateur ternaireVérifier l’appartenanceVérifier l’identitéErreurs d’indentationRécapitulatif – Filtre de vacances8Gestionnaire des dossiers étudiants
Présentation du projetAjouter un étudiant11Fonctions avancées
Retourner plusieurs valeursFonctions lambda, partie 1Fonctions lambda, partie 2Défi récapitulatif - Tri avec lambdaFonctions récursives, partie 1Fonctions récursives, partie 2Récapitulatif - Somme d’une liste imbriquée14Fonctions d’ordre supérieur
La fonction mapLa fonction filterRécapitulatif - Validateur d’e-mailsRécapitulatif - Traitement de nombres3Dictionnaires, partie 2
Méthodes des dictionnairesDictionnaires imbriquésVérifier la présence de clésParcourir les dictionnairesRécapitulatif - Compteur de fréquences6Ensembles, partie 1
Qu’est-ce qu’un ensemble ?Opérations de baseMéthodes des ensemblesRécapitulatif - Supprimer les doublons9Agrégation avancée de données
Utiliser la sommeTrouver le minimum et le maximumTrier les données efficacementRécapitulatif - Trieur de dictionnairesEntraînez-vous par vous-même : Compilateur Python en ligne