Python | Probar si la tupla es distinta

A veces, mientras trabajamos con registros, tenemos un problema en el que necesitamos encontrar si todos los elementos de la tupla son diferentes. Esto puede tener aplicaciones en muchos dominios, incluido el desarrollo web. Analicemos ciertas formas en que se puede realizar esta tarea.

Método n.º 1: Usar bucle
Esta es una forma de fuerza bruta en la que se puede realizar esta tarea. En esto, simplemente iteramos a través de todos los elementos de la tupla y los ponemos en conjunto si es la primera vez que aparece. Durante la ocurrencia de la subsecuencia verificamos el conjunto, si existe, devolvemos Falso.

# Python3 code to demonstrate working of
# Test if tuple is distinct
# Using loop
  
# initialize tuple 
test_tup = (1, 4, 5, 6, 1, 4)
  
# printing original tuple 
print("The original tuple is : " + str(test_tup))
  
# Test if tuple is distinct
# Using loop
res = True 
temp = set()
for ele in test_tup:
    if ele in temp:
        res = False 
        break
    temp.add(ele)
  
# printing result
print("Is tuple distinct ? : " + str(res))
Producción :

The original tuple is : (1, 4, 5, 6, 1, 4)
Is tuple distinct ? : False

Método #2: Usandoset() + len()
En este método, convertimos la tupla en un conjunto usando set(), y luego la verificamos con la longitud original de la tupla, si coincide, significa que era una tupla distinta y devuelve True.

# Python3 code to demonstrate working of
# Test if tuple is distinct
# Using set() + len()
  
# initialize tuple 
test_tup = (1, 4, 5, 6)
  
# printing original tuple 
print("The original tuple is : " + str(test_tup))
  
# Test if tuple is distinct
# Using set() + len()
res = len(set(test_tup)) == len(test_tup)
  
# printing result
print("Is tuple distinct ? : " + str(res))
Producción :

The original tuple is : (1, 4, 5, 6)
Is tuple distinct ? : 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 *