Itertools en Python se refiere al módulo provisto en Python para la creación de iteradores que también ayuda a la eficiencia de bucles, tiempo y espacio. Itertools nos ayuda a resolver problemas complejos de manera fácil y eficiente. Hay en general 3 tipos de iteradores.
Los diferentes tipos de iteradores proporcionados por este módulo son:
Nota: Para obtener más información, consulte Python Itertools
Itertools.Combinaciones_con_reemplazo()
Itertools.Combinations_with_replacement() se encuentra en el subtipo Generador combinatorio de itertools. Los generadores combinatorios se refieren a aquellos iteradores que se ocupan de los diferentes arreglos posibles para un iterador. Aquí los elementos se refieren con su valor de índice y no por su valor o tipo.
¿Cómo usar la función Itertools.Combinations_with_replacement()?
Como se entiende por nombre, «combinaciones» significa todos los posibles subconjuntos o arreglos del iterador y la palabra «combinaciones_con_reemplazo» significa todos los posibles arreglos o subconjuntos que permiten que un elemento se repita en un subconjunto. Esta función toma ‘r’ como entrada aquí ‘r’ representa el tamaño de las diferentes combinaciones que son posibles. Todas las combinaciones con repetición de elementos se emiten y son de longitud ‘r’ y ‘r’ es aquí un argumento necesario.
Ejemplo 1:-
Python3
from itertools import combinations_with_replacement a ="GEeks" l = list(combinations_with_replacement(a, 2)) print("COMBINATIONS WITH REPLACEMENTS OF STRING GEeks OF SIZE 2.") print(l)
Producción:-
COMBINACIONES CON RECAMBIOS DE CUERDA GEeks DE TALLA 2.
[(‘G’, ‘G’), (‘G’, ‘E’), (‘G’, ‘e’), (‘G’, ‘k’) , (‘G’, ‘s’), (‘E’, ‘E’), (‘E’, ‘e’), (‘E’, ‘k’), (‘E’, ‘s’) , (‘e’, ‘e’), (‘e’, ‘k’), (‘e’, ‘s’), (‘k’, ‘k’), (‘k’, ‘s’) , (‘s’, ‘s’)]
Ejemplo 2:-
Python3
from itertools import combinations_with_replacement print ("All the combination of List in sorted order(with replacement) is:") print(list(combinations_with_replacement('D.P.S.', 2))) print() print ("All the combination of list in sorted order(with replacement) is:") print(list(combinations_with_replacement(range(1, 5), 2)))
Producción:-
Toda la combinación de List en orden ordenado (con reemplazo) es:
[(‘D’, ‘D’), (‘D’, ‘.’), (‘D’, ‘P’), (‘D’, ‘.’), (‘D’, ‘S’), (‘D’, ‘.’), (‘.’, ‘.’), (‘.’, ‘P’), (‘.’, ‘.’), (‘.’, ‘S’), (‘.’, ‘.’), (‘P’, ‘P’), (‘P’, ‘.’), (‘P’, ‘S’), (‘P’, ‘.’), (‘.’, ‘.’), (‘.’, ‘S’), (‘.’, ‘.’), (‘S’, ‘S’), (‘S’, ‘.’), (‘.’, ‘.’)]
Toda la combinación de lista en orden ordenado (con reemplazo) es:
[(1, 1), (1, 2 ), (1, 3), (1, 4), (2, 2), (2, 3), (2, 4), (3, 3), (3, 4), (4, 4)]