Utiliser l'agrégation de données
Fait partie de la section Logic & Flow 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 basées sur des itérables existants. Vous pouvez intégrer des fonctions d'agrégation de données comme sum(), min() et max() directement au sein des compréhensions de liste pour effectuer des calculs sur les éléments de la nouvelle liste pendant 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 de valeurs transformées :
numbers = [-3, -1, 0, 1, 3]
min_absolute = min([abs(n) for n in numbers])
print(min_absolute)
# Résultat : 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 dans cette liste.
Trouver le maximum de 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 dans cette liste.
Défi
FacileÉcrivez une fonction sum_positive_evens qui prend une liste de nombres en entrée. Utilisez une compréhension de liste pour filtrer les nombres pairs positifs, puis utilisez sum() pour calculer leur total. Retournez le résultat.
Exemple d'entrée :
numbers = [-10, -5, 0, 2, 4, 7, 10, 12]Exemple de sortie :
28Aide-mémoire
Les compréhensions de liste peuvent être combinées avec des fonctions d'agrégation comme sum(), min() et max() pour effectuer des calculs sur des données transformées ou filtrées.
Calculer la somme des carrés :
numbers = [1, 2, 3, 4, 5]
sum_of_squares = sum([n * n for n in numbers])
# Résultat : 55Trouver le minimum de valeurs transformées :
numbers = [-3, -1, 0, 1, 3]
min_absolute = min([abs(n) for n in numbers])
# Résultat : 0Trouver le maximum de valeurs filtrées :
numbers = [1, 2, 3, 4, 5, 6]
max_even = max([n for n in numbers if n % 2 == 0])
# Résultat : 6Essayez vous-même
def sum_positive_evens(numbers):
# Écrire 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 Logic & Flow
1Exploration des variables
ConstantesAffectations multiplesÉchange de variablesVariables de substitutionArrondir des nombresCasting de listes4Application de carnet de contacts
Afficher le menuAjouter un contact7Ensembles Partie 2
Opérations mathématiques Partie 1Opérations mathématiques Partie 2Récapitulatif - Chasse au trésorSous-ensembles et sur-ensemblesItérer sur les ensemblesRécapitulatif - Suivi de tournoi10Compréhensions de listes basiques
La syntaxeCréer des listes simplesAjouter des conditionsUtiliser l'agrégation de donnéesRécapitulatif - House Of ListsRécapitulatif - Elements Of Freedom13Système de gestion des stocks
Présentation du projetAjouter un article2Les dictionnaires - 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érifications d'appartenanceVérifications d'identitéErreurs d'indentationRécapitulatif - Filtre de vacances8Gestionnaire de dossiers étudiants
Présentation du projetAjouter un étudiant11Fonctions avancées
Retourner plusieurs valeursFonctions Lambda - Partie 1Fonctions Lambda - Partie 2Défi récapitulatif - Tri 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 - Processeur de nombres3Dictionnaires - Partie 2
Méthodes de dictionnaireDictionnaires imbriquésVérification des clésParcourir les dictionnairesRécapitulatif - Compteur de fréquence6Les Ensembles - Partie 1
Qu'est-ce qu'un ensemble ?Opérations de baseMéthodes des ensemblesRécapitulatif - Supprimer les doublons9Agrégation de données avancée
Utilisation de SumTrouver le minimum et le maximumTrier les données efficacementRécapitulatif - Trieur de dictionnaires