Python 3 : Variations dans l'implémentation du filtre, de la cartographie et de la réduction
Dans Python 2, le filtre, la cartographie et la réduction se comportent différemment de leurs homologues Python 3. Cela découle de plusieurs changements importants implémentés dans Python 3 :
Vues et itérateurs sur les listes :
Suppression de réduire() :
Exemple d'utilisation :
Les extraits de code Python 2 peuvent être mis à jour pour Python 3 comme suit :
def f(x): return x % 2 != 0 and x % 3 != 0 # **Filter:** Use list() to obtain a list of filtered values filtered_list = list(filter(f, range(2, 25))) # **Map:** Similarly, use list() to convert the iterator to a list cubed_list = list(map(lambda x: x ** 3, range(1, 11))) # **Reduce:** Use functools.reduce() or an explicit for loop from functools import reduce add_result = reduce(lambda x, y: x + y, range(1, 11)) print(filtered_list) # Output: [5, 7, 11, 13, 17, 19, 23] print(cubed_list) # Output: [1, 8, 27, 64, 125, 216, 343, 512, 729, 1000] print(add_result) # Output: 55
Supplémentaire Ressources :
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!