A veces, mientras trabajamos con la lista de Python, podemos tener un problema en el que necesitamos extraer todos los pares posibles que se pueden realizar de los enteros de la lista. Este tipo de problema puede ocurrir en muchos dominios, como la programación diaria y el desarrollo web. Analicemos ciertas formas en que se puede realizar esta tarea.
Entrada : test_list = [1, 7, 4]
Salida : [(1, 7), (1, 4), (7, 4)]Entrada : test_list = [7, 4]
Salida : [(7, 4)]
Método #1: Uso de la comprensión de listas +enumerate()
Esta es una de las formas en que se puede realizar esta tarea. En esto, realizamos la tarea de emparejar usando bucles anidados en la receta de comprensión de lista, y enumerate() se usa para verificar con los siguientes índices durante la iteración.
# Python3 code to demonstrate working of # All possible pairs in List # Using list comprehension + enumerate() # initializing list test_list = [1, 7, 4, 3] # printing original list print("The original list : " + str(test_list)) # All possible pairs in List # Using list comprehension + enumerate() res = [(a, b) for idx, a in enumerate(test_list) for b in test_list[idx + 1:]] # printing result print("All possible pairs : " + str(res))
The original list : [1, 7, 4, 3] All possible pairs : [(1, 7), (1, 4), (1, 3), (7, 4), (7, 3), (4, 3)]
Método #2: Usarcombinations()
Esta es una de las formas en que se puede realizar esta tarea. En esto, solo usamos la función incorporada para emparejar y enviar 2 como valor para hacer pares de tamaño 2.
# Python3 code to demonstrate working of # All possible pairs in List # Using combinations() from itertools import combinations # initializing list test_list = [1, 7, 4, 3] # printing original list print("The original list : " + str(test_list)) # All possible pairs in List # Using combinations() res = list(combinations(test_list, 2)) # printing result print("All possible pairs : " + str(res))
The original list : [1, 7, 4, 3] All possible pairs : [(1, 7), (1, 4), (1, 3), (7, 4), (7, 3), (4, 3)]
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA