Exemple de fonction réduire() en python

黄舟
Libérer: 2017-10-03 05:44:49
original
1692 Les gens l'ont consulté

La fonction réduire() accumulera des éléments dans la séquence de paramètres. L'article suivant vous présente principalement l'utilisation de la fonction réduire() en Python. L'article la présente en détail à travers un exemple de code. Il est très utile pour tout le monde. apprentissage ou Le travail a une certaine valeur de référence et d'apprentissage. Les amis qui en ont besoin peuvent jeter un œil ci-dessous.

Avant-propos

Cet article présente principalement le contenu pertinent sur l'utilisation de la fonction réduire() en python, et le partage pour votre référence et étude. Pas grand chose à dire ci-dessous, jetons un œil à l'introduction détaillée : La fonction

reduce() est dans la bibliothèque functools Si vous souhaitez l'utiliser, vous devez l'importer depuis cette bibliothèque. La fonction de réduction est différente de la fonction map. L'opération map est une opération parallèle. La fonction de réduction est une opération qui combine plusieurs paramètres, c'est-à-dire le résultat d'une simplification à partir de plusieurs conditions dans les algorithmes informatiques. simplifier. Par exemple, identifier si une image est un chat, c'est extraire un jugement de plusieurs pixels : oui ou non. Il peut y avoir des millions de pixels, mais un seul résultat sera obtenu. Dans les clusters à grande échelle de GOOGLE, cette idée est utilisée pour appeler la carte des opérations de traitement parallèle précédentes. Les résultats après traitement parallèle doivent être simplifiés et classés. Ce processus de simplification et de classification est appelé réduction. Étant donné que la réduction ne peut fonctionner que sur un seul hôte et ne peut pas être traitée de manière distribuée, les résultats de la cartographie des processus réduits, ce qui signifie que ces résultats sont très simples, la quantité de données est considérablement réduite et le traitement est très rapide.

Par conséquent, le processus mapreduce peut être appelé le processus d'analyse et d'induction.

Regardez l'exemple de réduction() ci-dessous :


#python 3. 6 
#蔡军生 
#http://blog.csdn.net/caimouse/article/details/51749579 
# 
from functools import reduce 
 
result = reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) 
print(result)
Copier après la connexion

Résultat de sortie :

15

Dans cet exemple, le processus de calcul est en fait comme ceci :

((( (1+2)+3)+4)+5)


Regardez un autre exemple factoriel :


#python 3. 6 
#蔡军生 
#http://blog.csdn.net/caimouse/article/details/51749579 
# 
from functools import reduce 
 
n = 3 
print(reduce(lambda x, y: x * y, range(1, n + 1))) # 6
Copier après la connexion

Résultat de sortie :

6

fonction de réduction, la fonction de réduction sera Accumulez des éléments dans la séquence de paramètres.

Définition de la fonction réduire :


reduce(function, sequence[, initial]) -> value
Copier après la connexion

Le paramètre fonction est un paramètre à deux paramètres Fonction, réduire prend à son tour un élément de la séquence et appelle à nouveau la fonction avec le résultat du dernier appel à la fonction comme paramètre.

Lorsque la fonction est appelée pour la première fois, si le paramètre initial est fourni, la fonction sera appelée avec le premier élément de la séquence et initial en paramètres, sinon les deux premiers éléments de la La séquence sera utilisée comme paramètres d’appel de la fonction.


reduce(lambda x, y: x + y, [2, 3, 4, 5, 6], 1)
Copier après la connexion

Le résultat est 21( (((((1+2)+3)+4)+5)+6) )


reduce(lambda x, y: x + y, [2, 3, 4, 5, 6])
Copier après la connexion

Le résultat est 20

Résumé

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!