Requisitos previos: Python Itertools
Itertool de Python es un módulo que proporciona varias funciones que funcionan en iteradores para producir iteradores complejos. Este módulo funciona como una herramienta rápida y eficiente en memoria que se usa solo o en combinación para formar álgebra de iteración.
Itertools.groupby()
Este método calcula las claves para cada elemento presente en iterable. Devuelve clave e iterable de elementos agrupados.
Sintaxis: itertools.groupby(iterable, key_func)
Parámetros:
iterable: Iterable puede ser de cualquier tipo (lista, tupla, diccionario).
clave: una función que calcula claves para cada elemento presente en iterable.Tipo de retorno: Devuelve claves y grupos consecutivos del iterable. Si la función clave no se especifica o es Ninguna, la clave predeterminada es una función de identidad y devuelve el elemento sin cambios.
Ejemplo 1:
# Python code to demonstrate # itertools.groupby() method import itertools L = [("a", 1), ("a", 2), ("b", 3), ("b", 4)] # Key function key_func = lambda x: x[0] for key, group in itertools.groupby(L, key_func): print(key + " :", list(group))
Producción:
a : [('a', 1), ('a', 2)] b : [('b', 3), ('b', 4)]
Ejemplo 2:
# Python code to demonstrate # itertools.groupby() method import itertools a_list = [("Animal", "cat"), ("Animal", "dog"), ("Bird", "peacock"), ("Bird", "pigeon")] an_iterator = itertools.groupby(a_list, lambda x : x[0]) for key, group in an_iterator: key_and_group = {key : list(group)} print(key_and_group)
Producción
{'Animal': [('Animal', 'cat'), ('Animal', 'dog')]} {'Bird': [('Bird', 'peacock'), ('Bird', 'pigeon')]}
Publicación traducida automáticamente
Artículo escrito por priyanshid1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA