Python | Comparar tuplas

A veces, mientras trabajamos con registros, podemos tener un problema en el que necesitamos verificar si cada elemento de una tupla es mayor/menor que su índice correspondiente en otra tupla. Esto puede tener muchas aplicaciones posibles. Analicemos ciertas formas en que se puede realizar esta tarea.

Método #1: Usarall() + generator expression + zip()
La combinación de las funcionalidades anteriores se puede usar para realizar esta tarea. En esto, solo comparamos todos los elementos usando all(). El acceso cruzado de tuplas se realiza mediante zip()una expresión generadora que nos da la lógica para comparar.

# Python3 code to demonstrate working of
# Comparing tuples
# using generator expression + all() + zip()
  
# initialize tuples 
test_tup1 = (10, 4, 5)
test_tup2 = (13, 5, 18)
  
# printing original tuples 
print("The original tuple 1 : " + str(test_tup1))
print("The original tuple 2 : " + str(test_tup2))
  
# Comparing tuples
# using generator expression + all() + zip()
res = all(x < y for x, y in zip(test_tup1, test_tup2))
  
# printing result
print("Are all elements in second tuple greater than first ? : " + str(res))
Producción :

The original tuple 1 : (10, 4, 5)
The original tuple 2 : (13, 5, 18)
Are all elements in second tuple greater than first ? : True

Método #2: Usar all() + map()+ lambda
La combinación de las funcionalidades anteriores se puede usar para realizar esta tarea en particular. En esto, realizamos la extensión de la lógica a cada elemento usando map()y generando lógica mediante la función lambda.

# Python3 code to demonstrate working of
# Comparing tuples
# using all() + lambda + map()
  
# initialize tuples 
test_tup1 = (10, 4, 5)
test_tup2 = (13, 5, 18)
  
# printing original tuples 
print("The original tuple 1 : " + str(test_tup1))
print("The original tuple 2 : " + str(test_tup2))
  
# Comparing tuples
# using all() + lambda + map()
res = all(map(lambda i, j: i < j, test_tup1, test_tup2))
  
# printing result
print("Are all elements in second tuple greater than first ? : " + str(res))
Producción :

The original tuple 1 : (10, 4, 5)
The original tuple 2 : (13, 5, 18)
Are all elements in second tuple greater than first ? : True

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *